<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://codresearch.dev/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Therifboy</id>
	<title>COD Engine Research - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://codresearch.dev/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Therifboy"/>
	<link rel="alternate" type="text/html" href="https://codresearch.dev/index.php/Special:Contributions/Therifboy"/>
	<updated>2026-07-28T10:13:45Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.42.3</generator>
	<entry>
		<id>https://codresearch.dev/index.php?title=DDL_Asset&amp;diff=1018</id>
		<title>DDL Asset</title>
		<link rel="alternate" type="text/html" href="https://codresearch.dev/index.php?title=DDL_Asset&amp;diff=1018"/>
		<updated>2015-11-07T13:42:38Z</updated>

		<summary type="html">&lt;p&gt;Therifboy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
[[Category:Assets]]&lt;br /&gt;
[[Category:BO1]]&lt;br /&gt;
[[Category:BO2]]&lt;br /&gt;
[[Category:BO3]]&lt;br /&gt;
The DDL asset is Treyarch&#039;s equivalent to IW&#039;s structureddatadef asset and is used to store structure information. As such it only appears in the Black Ops franchise. The acronym that &amp;quot;ddl&amp;quot; represents (Data Definition Language most likely, Data Definition Library, Dynamic Data Library?) is currently unknown.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
enum ddlPrimitiveTypes_e : unsigned int&lt;br /&gt;
{&lt;br /&gt;
  DDL_INVALID_TYPE = 0xFFFFFFFF,&lt;br /&gt;
  DDL_BYTE_TYPE = 0x0,&lt;br /&gt;
  DDL_SHORT_TYPE = 0x1,&lt;br /&gt;
  DDL_UINT_TYPE = 0x2,&lt;br /&gt;
  DDL_INT_TYPE = 0x3,&lt;br /&gt;
  DDL_INT64_TYPE = 0x4,&lt;br /&gt;
  DDL_FLOAT_TYPE = 0x5,&lt;br /&gt;
  DDL_FIXEDPOINT_TYPE = 0x6,&lt;br /&gt;
  DDL_STRING_TYPE = 0x7,&lt;br /&gt;
  DDL_STRUCT_TYPE = 0x8,&lt;br /&gt;
  DDL_ENUM_TYPE = 0x9,&lt;br /&gt;
#ifdef BO3&lt;br /&gt;
  DDL_PAD_TYPE = 0xA&lt;br /&gt;
#endif&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct ddlHash_t&lt;br /&gt;
{&lt;br /&gt;
#ifdef BO3&lt;br /&gt;
  char * unknownData; //Size = unknownSize &amp;lt;&amp;lt; 3&lt;br /&gt;
  int unknownSize;&lt;br /&gt;
  int unknown;&lt;br /&gt;
#else&lt;br /&gt;
  int hash;&lt;br /&gt;
  int index;&lt;br /&gt;
#endif&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct ddlEnumDef_t&lt;br /&gt;
{&lt;br /&gt;
  const char *name;&lt;br /&gt;
  int memberCount;&lt;br /&gt;
  const char **members;&lt;br /&gt;
#if defined(BO2) || defined(BO3)&lt;br /&gt;
  ddlHash_t *hashTable;&lt;br /&gt;
#endif&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct ddlMemberDef_t&lt;br /&gt;
{&lt;br /&gt;
  const char *name;&lt;br /&gt;
#ifdef BO3&lt;br /&gt;
  int indexInParent;&lt;br /&gt;
  ddlStructDef_t * parent;&lt;br /&gt;
  char unknown2[0x4];&lt;br /&gt;
#endif&lt;br /&gt;
  int size;&lt;br /&gt;
  int offset;&lt;br /&gt;
  ddlPrimitiveTypes_e type;&lt;br /&gt;
  int externalIndex;&lt;br /&gt;
  unsigned int rangeLimit;&lt;br /&gt;
  unsigned int serverDelta;&lt;br /&gt;
  unsigned int clientDelta;&lt;br /&gt;
  int arraySize;&lt;br /&gt;
  int enumIndex;&lt;br /&gt;
  int permission;&lt;br /&gt;
#ifdef BO1&lt;br /&gt;
  int unknown3;&lt;br /&gt;
#endif&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct ddlStructDef_t&lt;br /&gt;
{&lt;br /&gt;
  const char *name;&lt;br /&gt;
  int size;&lt;br /&gt;
  int memberCount;&lt;br /&gt;
  ddlMemberDef_t *members;&lt;br /&gt;
#if defined(BO2) || defined(BO3)&lt;br /&gt;
  ddlHash_t *hashTable;&lt;br /&gt;
#ifdef BO3&lt;br /&gt;
  ddlHash_t *hashTable2;&lt;br /&gt;
#endif&lt;br /&gt;
#endif&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct ddlDef_t&lt;br /&gt;
{&lt;br /&gt;
#ifdef BO3&lt;br /&gt;
  const char * name;&lt;br /&gt;
  short version;&lt;br /&gt;
  unsigned int checksum;&lt;br /&gt;
  char unknown1[0x4];&lt;br /&gt;
  int size;&lt;br /&gt;
  int unknown2;&lt;br /&gt;
#else&lt;br /&gt;
  int version;&lt;br /&gt;
  int size;&lt;br /&gt;
#endif&lt;br /&gt;
  ddlStructDef_t *structList;&lt;br /&gt;
  int structCount;&lt;br /&gt;
  ddlEnumDef_t *enumList;&lt;br /&gt;
  int enumCount;&lt;br /&gt;
  ddlDef_t *next;&lt;br /&gt;
#ifdef BO3&lt;br /&gt;
  char unknown3[0x14];&lt;br /&gt;
#endif&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct ddlRoot_t&lt;br /&gt;
{&lt;br /&gt;
  const char *name;&lt;br /&gt;
  ddlDef_t *ddlDef;&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
== Source Format ==&lt;br /&gt;
The current public source format for DDLs is no good for the modding scene. It is similar to a string table with the name of the entries and their maximum and minimum values. A more useful format would be similar to the structureddatadefs with a structure and enums. DDLs are defined at &amp;quot;ddl/&amp;quot; for SP and shared DDLs, and at &amp;quot;ddl_mp/&amp;quot; for MP DDLs.&lt;br /&gt;
&lt;br /&gt;
First enums must be dumped. These are very simple with each EnumEntry an individual enum and having a single string in the entries for each member of the enum.&lt;br /&gt;
&lt;br /&gt;
Structures are the second and last item to be dumped. Each StructEntry is a structure to be used, and each MemberEntry is an item in the structure. Keep in mind that while IW&#039;s structureddatadef used normal lengths and byte offsets, the DDL uses bit offset/lengths and aligns almost nothing. Dumping the DDL should be fairly obvious when compared to the structureddatadef.&lt;/div&gt;</summary>
		<author><name>Therifboy</name></author>
	</entry>
	<entry>
		<id>https://codresearch.dev/index.php?title=ScriptFile_Asset&amp;diff=841</id>
		<title>ScriptFile Asset</title>
		<link rel="alternate" type="text/html" href="https://codresearch.dev/index.php?title=ScriptFile_Asset&amp;diff=841"/>
		<updated>2015-01-28T13:57:28Z</updated>

		<summary type="html">&lt;p&gt;Therifboy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
[[Category:Assets]]&lt;br /&gt;
[[Category:MW3]]&lt;br /&gt;
[[Category:Ghosts]]&lt;br /&gt;
[[Category:AW]]&lt;br /&gt;
The scriptfile asset is used on Modern Warfare 3, Ghosts, and Advanced Warfare. It is Infinity Ward&#039;s attempt at protecting their game scripts from being modified. Compared to Treyarch&#039;s scriptparsetree, the scriptfile gives away less information on identifying which game script file it originated from. All unnecessary strings have been removed and file names have even been renamed as number id&#039;s.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
struct ScriptFile&lt;br /&gt;
{&lt;br /&gt;
  const char *name;&lt;br /&gt;
  int compressedLen;&lt;br /&gt;
  int len;&lt;br /&gt;
  int bytecodeLen;&lt;br /&gt;
  const char *buffer;&lt;br /&gt;
  char *bytecode;&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
=== Buffer ===&lt;br /&gt;
The buffer is a zlib compressed section in which the compressed size is equal to compressedLen and it&#039;s uncompressed size is equal to len.&lt;br /&gt;
&lt;br /&gt;
This section of data is not needed during runtime. Before being executed, the linker runs through the bytecode once and links the buffer and bytecode section together so that all programs can be ran as one. It contains strings and function call info.&lt;br /&gt;
&lt;br /&gt;
In order to be linked correctly, the buffer and bytecode section must be read synchronously (e.g. when reading the OP_GetString opcode, the buffer pointer must be pointing to the string ready to be loaded). The linker does this by incrementing the buffer pointer each time it reads an opcode that uses it.&lt;br /&gt;
&lt;br /&gt;
At the beginning of each function, the linker loads a 32 bit value, which is the length of the function in the program section. Then it loads a 16 bit value which is the function id. If the id is equal to zero, then it will load a string after it, which is the name of the function. After this, the opcodes may begin to use the data section. The opcodes that use the data section are OP_GetAnimTree, OP_GetString, OP_GetIString, OP_GetAnimation, OP_GetFarFunction, OP_EvalLevelFieldVariable, OP_EvalAnimFieldVariable, OP_EvalSelfFieldVariable, OP_EvalFieldVariable, OP_EvalLevelFieldVariableRef, OP_EvalAnimFieldVariableRef, OP_EvalSelfFieldVariableRef, OP_EvalFieldVariableRef, OP_ClearFieldVariable, OP_SetLevelFieldVariableField, OP_SetSelfFieldVariableField, all the far call opcodes, and OP_endswitch.&lt;br /&gt;
&lt;br /&gt;
=== Byte Code ===&lt;br /&gt;
The byte is the actual compiled game script code.&lt;br /&gt;
&lt;br /&gt;
== Operation Codes ==&lt;br /&gt;
=== Modern Warfare 3 ===&lt;br /&gt;
==== XBOX &amp;amp; PS3 ====&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#define OP_End					0&lt;br /&gt;
#define OP_Return				1&lt;br /&gt;
#define OP_GetUndefined			2&lt;br /&gt;
#define OP_GetZero				3&lt;br /&gt;
#define OP_GetByte				4&lt;br /&gt;
#define OP_GetAnimTree				5&lt;br /&gt;
#define OP_GetNegByte			6&lt;br /&gt;
#define OP_GetUnsignedShort		7&lt;br /&gt;
#define OP_GetNegUnsignedShort	8&lt;br /&gt;
#define OP_GetInteger			9&lt;br /&gt;
#define OP_GetBuiltinFunction			0xA&lt;br /&gt;
#define OP_GetBuiltinMethod			0xB&lt;br /&gt;
#define OP_GetFloat				0xC&lt;br /&gt;
#define OP_GetString			0xD&lt;br /&gt;
#define OP_GetIString			0xE&lt;br /&gt;
#define OP_GetVector			0xF&lt;br /&gt;
#define OP_GetLevelObject		0x10&lt;br /&gt;
#define OP_GetAnimObject		0x11&lt;br /&gt;
#define OP_GetSelf				0x12&lt;br /&gt;
#define OP_GetThisthread			0x13&lt;br /&gt;
#define OP_GetLevel				0x14&lt;br /&gt;
#define OP_GetGame				0x15&lt;br /&gt;
#define OP_GetAnim				0x16&lt;br /&gt;
#define OP_GetAnimation			0x17&lt;br /&gt;
#define OP_GetGameRef			0x18&lt;br /&gt;
#define OP_GetLocalFunction			0x19&lt;br /&gt;
#define OP_GetFarFunction			0x1A&lt;br /&gt;
#define OP_CreateLocalVariable	0x1B&lt;br /&gt;
#define OP_RemoveLocalVariables	0x1C&lt;br /&gt;
#define OP_EvalLocalVariableCached0		0x1D&lt;br /&gt;
#define OP_EvalLocalVariableCached1		0x1E&lt;br /&gt;
#define OP_EvalLocalVariableCached2		0x1F&lt;br /&gt;
#define OP_EvalLocalVariableCached3		0x20&lt;br /&gt;
#define OP_EvalLocalVariableCached4		0x21&lt;br /&gt;
#define OP_EvalLocalVariableCached5		0x22&lt;br /&gt;
#define OP_EvalLocalVariableCached		0x23&lt;br /&gt;
#define OP_EvalLocalArrayCached			0x24&lt;br /&gt;
#define OP_EvalArray				0x25&lt;br /&gt;
#define OP_EvalLocalArrayRefCached0		0x26&lt;br /&gt;
#define OP_EvalNewLocalArrayRefCached0       	0x27&lt;br /&gt;
#define OP_EvalLocalArrayRefCached		0x28&lt;br /&gt;
#define OP_EvalArrayRef				0x29&lt;br /&gt;
#define OP_ClearArray				0x2A&lt;br /&gt;
#define OP_EmptyArray				0x2B&lt;br /&gt;
#define OP_AddArray				0x2C&lt;br /&gt;
#define OP_GetSelfObject			0x2D&lt;br /&gt;
#define OP_EvalLevelFieldVariable	0x2E&lt;br /&gt;
#define OP_EvalAnimFieldVariable	0x2F&lt;br /&gt;
#define OP_EvalSelfFieldVariable	0x30&lt;br /&gt;
#define OP_EvalFieldVariable		0x31&lt;br /&gt;
#define OP_EvalLevelFieldVariableRef 	0x32&lt;br /&gt;
#define OP_EvalAnimFieldVariableRef		0x33&lt;br /&gt;
#define OP_EvalSelfFieldVariableRef		0x34&lt;br /&gt;
#define OP_EvalFieldVariableRef			0x35&lt;br /&gt;
#define OP_ClearFieldVariable			0x36&lt;br /&gt;
#define OP_SafeCreateVariableFieldCached	0x37&lt;br /&gt;
#define OP_SafeSetVariableFieldCached0		0x38&lt;br /&gt;
#define OP_SafeSetVariableFieldCached		0x39&lt;br /&gt;
#define OP_SafeSetWaittillVariableFieldCached	0x3A&lt;br /&gt;
#define OP_clearparams				0x3B&lt;br /&gt;
#define OP_checkclearparams			0x3C&lt;br /&gt;
#define OP_EvalLocalVariableRefCached0				0x3D&lt;br /&gt;
#define OP_EvalNewLocalVariableRefCached0			0x3E	// nop&lt;br /&gt;
#define OP_EvalLocalVariableRefCached	0x3F&lt;br /&gt;
#define OP_SetLevelFieldVariableField	0x40&lt;br /&gt;
#define OP_SetVariableField		0x41&lt;br /&gt;
#define OP_ClearVariableField			0x42	// nop&lt;br /&gt;
#define OP_SetAnimFieldVariableField	0x43&lt;br /&gt;
#define OP_SetSelfFieldVariableField	0x44&lt;br /&gt;
#define OP_SetLocalVariableFieldCached0		0x45&lt;br /&gt;
#define OP_SetNewLocalVariableFieldCached0		0x46&lt;br /&gt;
#define OP_SetLocalVariableFieldCached		0x47&lt;br /&gt;
#define OP_ClearLocalVariableFieldCached		0x48&lt;br /&gt;
#define OP_ClearLocalVariableFieldCached0		0x49&lt;br /&gt;
#define OP_CallBuiltin0		0x4A&lt;br /&gt;
#define OP_CallBuiltin1		0x4B&lt;br /&gt;
#define OP_CallBuiltin2		0x4C&lt;br /&gt;
#define OP_CallBuiltin3		0x4D&lt;br /&gt;
#define OP_CallBuiltin4		0x4E&lt;br /&gt;
#define OP_CallBuiltin5		0x4F&lt;br /&gt;
#define OP_CallBuiltin		0x50&lt;br /&gt;
#define OP_CallBuiltinMethod0	0x51&lt;br /&gt;
#define OP_CallBuiltinMethod1	0x52&lt;br /&gt;
#define OP_CallBuiltinMethod2	0x53&lt;br /&gt;
#define OP_CallBuiltinMethod3	0x54&lt;br /&gt;
#define OP_CallBuiltinMethod4	0x55&lt;br /&gt;
#define OP_CallBuiltinMethod5	0x56&lt;br /&gt;
#define OP_CallBuiltinMethod	0x57&lt;br /&gt;
#define OP_wait					0x58&lt;br /&gt;
#define OP_waittillFrameEnd		0x59&lt;br /&gt;
#define OP_PreScriptCall		0x5A&lt;br /&gt;
#define OP_ScriptLocalFunctionCall2	0x5B&lt;br /&gt;
#define OP_ScriptLocalFunctionCall	0x5C&lt;br /&gt;
#define OP_ScriptLocalMethodCall	0x5D&lt;br /&gt;
#define OP_ScriptLocalThreadCall			0x5E&lt;br /&gt;
#define OP_ScriptLocalChildThreadCall	0x5F&lt;br /&gt;
#define OP_ScriptLocalMethodThreadCall			0x60&lt;br /&gt;
#define OP_ScriptLocalMethodChildThreadCall			0x61&lt;br /&gt;
#define OP_ScriptFarFunctionCall2		0x62&lt;br /&gt;
#define OP_ScriptFarFunctionCall		0x63&lt;br /&gt;
#define OP_ScriptFarMethodCall	0x64&lt;br /&gt;
#define OP_ScriptFarThreadCall				0x65&lt;br /&gt;
#define OP_ScriptFarChildThreadCall		0x66&lt;br /&gt;
#define OP_ScriptFarMethodThreadCall			0x67&lt;br /&gt;
#define OP_ScriptFarMethodChildThreadCall			0x68&lt;br /&gt;
#define OP_ScriptFunctionCallPointer			0x69&lt;br /&gt;
#define OP_ScriptMethodCallPointer			0x6A&lt;br /&gt;
#define OP_ScriptThreadCallPointer			0x6B&lt;br /&gt;
#define OP_ScriptMethodChildThreadCallPointer			0x6C&lt;br /&gt;
#define OP_ScriptMethodThreadCallPointer			0x6D&lt;br /&gt;
#define OP_ScriptMethodChildThreadCallPointer			0x6E&lt;br /&gt;
#define OP_CallBuiltinPointer			0x6F&lt;br /&gt;
#define OP_CallBuiltinMethodPointer			0x70&lt;br /&gt;
#define OP_DecTop			0x71&lt;br /&gt;
#define OP_CastFieldObject			0x72&lt;br /&gt;
#define OP_EvalLocalVariableObjectCached			0x73&lt;br /&gt;
#define OP_CastBool			0x74&lt;br /&gt;
#define OP_BoolNot				0x75&lt;br /&gt;
#define OP_BoolComplement		0x76&lt;br /&gt;
#define OP_JumpOnFalse			0x77&lt;br /&gt;
#define OP_JumpOnTrue			0x78&lt;br /&gt;
#define OP_JumpOnFalseExpr		0x79&lt;br /&gt;
#define OP_JumpOnTrueExpr		0x7A&lt;br /&gt;
#define OP_jump				0x7B&lt;br /&gt;
#define OP_jumpback			0x7C&lt;br /&gt;
#define OP_inc				0x7D&lt;br /&gt;
#define OP_dec				0x7E&lt;br /&gt;
#define OP_bit_or			0x7F&lt;br /&gt;
#define OP_bit_ex_or		0x80&lt;br /&gt;
#define OP_bit_and			0x81&lt;br /&gt;
#define OP_equality			0x82&lt;br /&gt;
#define OP_inequality		0x83&lt;br /&gt;
#define OP_less				0x84&lt;br /&gt;
#define OP_greater			0x85&lt;br /&gt;
#define OP_less_equal		0x86&lt;br /&gt;
#define OP_greater_equal	0x87&lt;br /&gt;
#define OP_shift_left		0x88&lt;br /&gt;
#define OP_shift_right		0x89&lt;br /&gt;
#define OP_plus				0x8A&lt;br /&gt;
#define OP_minus			0x8B&lt;br /&gt;
#define OP_multiply			0x8C&lt;br /&gt;
#define OP_divide			0x8F&lt;br /&gt;
#define OP_mod				0x8E&lt;br /&gt;
#define OP_size				0x8F&lt;br /&gt;
#define OP_waittillmatch		0x90&lt;br /&gt;
#define OP_waittillmatch2		0x91 // nop&lt;br /&gt;
#define OP_waittill			0x92&lt;br /&gt;
#define OP_notify			0x93&lt;br /&gt;
#define OP_endon			0x94&lt;br /&gt;
#define OP_voidCodepos		0x95&lt;br /&gt;
#define OP_switch			0x96&lt;br /&gt;
#define OP_endswitch		0x97&lt;br /&gt;
#define OP_vector			0x98&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== PC ====&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#define OP_End	0x0&lt;br /&gt;
#define OP_Return	0x1&lt;br /&gt;
#define OP_GetByte	0x2&lt;br /&gt;
#define OP_GetNegByte	0x3&lt;br /&gt;
#define OP_GetUnsignedShort	0x4&lt;br /&gt;
#define OP_GetNegUnsignedShort	0x5&lt;br /&gt;
#define OP_GetInteger	0x6&lt;br /&gt;
#define OP_GetBuiltinFunction	0x7&lt;br /&gt;
#define OP_GetBuiltinMethod	0x8&lt;br /&gt;
#define OP_GetFloat	0x9&lt;br /&gt;
#define OP_GetString	0xA&lt;br /&gt;
#define OP_GetUndefined	0xB&lt;br /&gt;
#define OP_GetZero	0xC&lt;br /&gt;
#define OP_waittillFrameEnd		0xD&lt;br /&gt;
#define OP_CreateLocalVariable	0xE&lt;br /&gt;
#define OP_RemoveLocalVariables	0xF&lt;br /&gt;
#define OP_EvalLocalVariableCached0	0x10&lt;br /&gt;
#define OP_EvalLocalVariableCached1	0x11&lt;br /&gt;
#define OP_EvalLocalVariableCached2	0x12&lt;br /&gt;
#define OP_EvalLocalVariableCached3	0x13&lt;br /&gt;
#define OP_EvalLocalVariableCached4	0x14&lt;br /&gt;
#define OP_EvalLocalVariableCached5	0x15&lt;br /&gt;
#define OP_EvalLocalVariableCached	0x16&lt;br /&gt;
#define OP_EvalLocalArrayCached	0x17&lt;br /&gt;
#define OP_EvalArray	0x18&lt;br /&gt;
#define OP_EvalNewLocalArrayRefCached0	0x19&lt;br /&gt;
#define OP_EvalLocalArrayRefCached0	0x1A&lt;br /&gt;
#define OP_EvalLocalArrayRefCached	0x1B&lt;br /&gt;
#define OP_EvalArrayRef	0x1C&lt;br /&gt;
#define OP_ClearArray	0x1D&lt;br /&gt;
#define OP_EmptyArray	0x1E&lt;br /&gt;
#define OP_AddArray	0x1F&lt;br /&gt;
#define OP_PreScriptCall	0x20&lt;br /&gt;
#define OP_ScriptLocalFunctionCall2	0x21&lt;br /&gt;
#define OP_ScriptLocalFunctionCall	0x22&lt;br /&gt;
#define OP_ScriptLocalMethodCall	0x23&lt;br /&gt;
#define OP_ScriptLocalThreadCall	0x24&lt;br /&gt;
#define OP_ScriptLocalChildThreadCall	0x25&lt;br /&gt;
#define OP_ScriptLocalMethodThreadCall	0x26&lt;br /&gt;
#define OP_ScriptLocalMethodChildThreadCall	0x27&lt;br /&gt;
#define OP_ScriptFarFunctionCall2	0x28&lt;br /&gt;
#define OP_ScriptFarFunctionCall	0x29&lt;br /&gt;
#define OP_ScriptFarMethodCall	0x2A&lt;br /&gt;
#define OP_ScriptFarThreadCall	0x2B&lt;br /&gt;
#define OP_ScriptFarChildThreadCall	0x2C&lt;br /&gt;
#define OP_ScriptFarMethodThreadCall	0x2D&lt;br /&gt;
#define OP_ScriptFarMethodChildThreadCall	0x2E&lt;br /&gt;
#define OP_ScriptFunctionCallPointer	0x2F&lt;br /&gt;
#define OP_ScriptMethodCallPointer		0x30&lt;br /&gt;
#define OP_ScriptThreadCallPointer		0x31&lt;br /&gt;
#define OP_ScriptMethodChildThreadCallPointer					0x32&lt;br /&gt;
#define OP_ScriptMethodThreadCallPointer	0x33&lt;br /&gt;
#define OP_ScriptMethodChildThreadCallPointer	0x34&lt;br /&gt;
#define OP_CallBuiltinPointer	0x35&lt;br /&gt;
#define OP_CallBuiltinMethodPointer	0x36&lt;br /&gt;
#define OP_GetIString	0x37&lt;br /&gt;
#define OP_GetVector	0x38&lt;br /&gt;
#define OP_GetLevelObject	0x39&lt;br /&gt;
#define OP_GetAnimObject	0x3A&lt;br /&gt;
#define OP_GetSelf	0x3B&lt;br /&gt;
#define OP_GetThisthread	0x3C&lt;br /&gt;
#define OP_GetLevel	0x3D&lt;br /&gt;
#define OP_GetGame	0x3E&lt;br /&gt;
#define OP_GetAnim	0x3F&lt;br /&gt;
#define OP_GetAnimation	0x40&lt;br /&gt;
#define OP_GetGameRef	0x41&lt;br /&gt;
#define OP_inc	0x42&lt;br /&gt;
#define OP_dec	0x43&lt;br /&gt;
#define OP_bit_or	0x44&lt;br /&gt;
#define OP_JumpOnFalseExpr	0x45&lt;br /&gt;
#define OP_bit_ex_or	0x46&lt;br /&gt;
#define OP_bit_and	0x47&lt;br /&gt;
#define OP_equality	0x48&lt;br /&gt;
#define OP_inequality	0x49&lt;br /&gt;
#define OP_less	0x4A&lt;br /&gt;
#define OP_greater	0x4B&lt;br /&gt;
#define OP_JumpOnTrueExpr	0x4C&lt;br /&gt;
#define OP_less_equal	0x4D&lt;br /&gt;
#define OP_jumpback	0x4E&lt;br /&gt;
#define OP_waittillmatch2	0x4F // nop&lt;br /&gt;
#define OP_waittill	0x50&lt;br /&gt;
#define OP_notify	0x51&lt;br /&gt;
#define OP_endon	0x52&lt;br /&gt;
#define OP_voidCodepos	0x53&lt;br /&gt;
#define OP_switch	0x54&lt;br /&gt;
#define OP_endswitch	0x55&lt;br /&gt;
#define OP_vector	0x56&lt;br /&gt;
#define OP_JumpOnFalse	0x57&lt;br /&gt;
#define OP_greater_equal	0x58&lt;br /&gt;
#define OP_shift_left	0x59&lt;br /&gt;
#define OP_shift_right	0x5A&lt;br /&gt;
#define OP_plus	0x5B&lt;br /&gt;
#define OP_jump	0x5C&lt;br /&gt;
#define OP_minus	0x5D&lt;br /&gt;
#define OP_multiply	0x5E&lt;br /&gt;
#define OP_divide	0x5F&lt;br /&gt;
#define OP_mod	0x60&lt;br /&gt;
#define OP_JumpOnTrue	0x61&lt;br /&gt;
#define OP_size	0x62&lt;br /&gt;
#define OP_waittillmatch	0x63&lt;br /&gt;
#define OP_GetLocalFunction	0x64&lt;br /&gt;
#define OP_GetFarFunction	0x65&lt;br /&gt;
#define OP_GetSelfObject	0x66&lt;br /&gt;
#define OP_EvalLevelFieldVariable	0x67&lt;br /&gt;
#define OP_EvalAnimFieldVariable	0x68&lt;br /&gt;
#define OP_EvalSelfFieldVariable	0x69&lt;br /&gt;
#define OP_EvalFieldVariable	0x6A&lt;br /&gt;
#define OP_EvalLevelFieldVariableRef	0x6B&lt;br /&gt;
#define OP_EvalAnimFieldVariableRef	0x6C&lt;br /&gt;
#define OP_EvalSelfFieldVariableRef	0x6D&lt;br /&gt;
#define OP_EvalFieldVariableRef	0x6E&lt;br /&gt;
#define OP_ClearFieldVariable	0x6F&lt;br /&gt;
#define OP_SafeCreateVariableFieldCached	0x70&lt;br /&gt;
#define OP_SafeSetVariableFieldCached0	0x71&lt;br /&gt;
#define OP_SafeSetVariableFieldCached		0x72&lt;br /&gt;
#define OP_SafeSetWaittillVariableFieldCached	0x73&lt;br /&gt;
#define OP_GetAnimTree	0x74&lt;br /&gt;
#define OP_clearparams	0x75&lt;br /&gt;
#define OP_checkclearparams				0x76&lt;br /&gt;
#define OP_EvalLocalVariableRefCached0	0x77&lt;br /&gt;
#define OP_EvalNewLocalVariableRefCached0	0x78 // nop&lt;br /&gt;
#define OP_EvalLocalVariableRefCached	0x79&lt;br /&gt;
#define OP_SetLevelFieldVariableField	0x7A&lt;br /&gt;
#define OP_SetVariableField				0x7B&lt;br /&gt;
#define OP_ClearVariableField		0x7C // nop&lt;br /&gt;
#define OP_SetAnimFieldVariableField	0x7D&lt;br /&gt;
#define OP_SetSelfFieldVariableField	0x7E&lt;br /&gt;
#define OP_SetLocalVariableFieldCached0	0x7F&lt;br /&gt;
#define OP_SetNewLocalVariableFieldCached0		0x80&lt;br /&gt;
#define OP_SetLocalVariableFieldCached	0x81&lt;br /&gt;
#define OP_ClearLocalVariableFieldCached		0x82&lt;br /&gt;
#define OP_ClearLocalVariableFieldCached0		0x83&lt;br /&gt;
#define OP_CallBuiltin0	0x84&lt;br /&gt;
#define OP_CallBuiltin1	0x85&lt;br /&gt;
#define OP_CallBuiltin2	0x86&lt;br /&gt;
#define OP_CallBuiltin3	0x87&lt;br /&gt;
#define OP_CallBuiltin4	0x88&lt;br /&gt;
#define OP_CallBuiltin5	0x89&lt;br /&gt;
#define OP_CallBuiltin	0x8A&lt;br /&gt;
#define OP_CallBuiltinMethod0	0x8B&lt;br /&gt;
#define OP_CallBuiltinMethod1	0x8C&lt;br /&gt;
#define OP_CallBuiltinMethod2	0x8D&lt;br /&gt;
#define OP_CallBuiltinMethod3	0x8E&lt;br /&gt;
#define OP_CallBuiltinMethod4	0x8F&lt;br /&gt;
#define OP_CallBuiltinMethod5	0x90&lt;br /&gt;
#define OP_CallBuiltinMethod	0x91&lt;br /&gt;
#define OP_wait		0x92&lt;br /&gt;
#define OP_DecTop	0x93&lt;br /&gt;
#define OP_CastFieldObject	0x94&lt;br /&gt;
#define OP_EvalLocalVariableObjectCached 0x95&lt;br /&gt;
#define OP_CastBool	0x96&lt;br /&gt;
#define OP_BoolNot	0x97&lt;br /&gt;
#define OP_BoolComplement 0x98&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Ghosts ===&lt;br /&gt;
The opcodes for Ghosts do the exact same thing as the Modern Warfare 3 opcodes, only their values seem to be scrambled in some way.&lt;br /&gt;
==== XBOX &amp;amp; PS3 ====&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#define OP_CastFieldObject			0x1D&lt;br /&gt;
#define OP_SetLocalVariableFieldCached	0x1E&lt;br /&gt;
#define OP_plus				0x1F&lt;br /&gt;
#define OP_RemoveLocalVariables		0x20&lt;br /&gt;
#define OP_EvalSelfFieldVariableRef	0x21&lt;br /&gt;
#define OP_ScriptFarMethodChildThreadCall	0x22&lt;br /&gt;
#define OP_GetGameRef			0x23&lt;br /&gt;
#define OP_EvalAnimFieldVariable	0x24&lt;br /&gt;
#define OP_EvalLevelFieldVariableRef	0x25&lt;br /&gt;
#define OP_GetThisthread		0x26&lt;br /&gt;
#define OP_greater		0x27&lt;br /&gt;
#define OP_waittillmatch	0x28&lt;br /&gt;
#define OP_shift_right		0x29&lt;br /&gt;
#define OP_dec			0x2A&lt;br /&gt;
#define OP_JumpOnTrue	0x2B&lt;br /&gt;
#define OP_bit_or	0x2C&lt;br /&gt;
#define OP_equality	0x2D&lt;br /&gt;
#define OP_ClearLocalVariableFieldCached0	0x2E&lt;br /&gt;
#define OP_notify	0x2F&lt;br /&gt;
#define OP_GetVector	0x30&lt;br /&gt;
#define OP_ScriptMethodChildThreadCallPointer	0x31&lt;br /&gt;
#define OP_voidCodepos	0x32&lt;br /&gt;
#define OP_GetByte	0x33&lt;br /&gt;
#define OP_ScriptFarMethodThreadCall		0x34&lt;br /&gt;
#define OP_SetSelfFieldVariableField	0x35&lt;br /&gt;
#define OP_JumpOnFalseExpr		0x36&lt;br /&gt;
#define OP_GetUndefined		0x37&lt;br /&gt;
#define OP_jumpback		0x38&lt;br /&gt;
#define OP_JumpOnTrueExpr	0x39&lt;br /&gt;
#define OP_CallBuiltin0		0x3A&lt;br /&gt;
#define OP_CallBuiltin1		0x3B&lt;br /&gt;
#define OP_CallBuiltin2		0x3C&lt;br /&gt;
#define OP_CallBuiltin3		0x3D&lt;br /&gt;
#define OP_CallBuiltin4		0x3E&lt;br /&gt;
#define OP_CallBuiltin5		0x3F&lt;br /&gt;
#define OP_CallBuiltin		0x40&lt;br /&gt;
#define OP_SetLocalVariableFieldCached0		0x41&lt;br /&gt;
#define OP_ClearFieldVariable	0x42&lt;br /&gt;
#define OP_GetLevel		0x43&lt;br /&gt;
#define OP_size			0x44&lt;br /&gt;
#define OP_SafeSetWaittillVariableFieldCached	0x45&lt;br /&gt;
#define OP_ScriptLocalThreadCall			0x46&lt;br /&gt;
#define OP_AddArray			0x47&lt;br /&gt;
#define OP_endon			0x48&lt;br /&gt;
#define OP_EvalFieldVariable		0x49&lt;br /&gt;
#define OP_shift_left			0x4A&lt;br /&gt;
#define OP_EvalLocalArrayRefCached0	0x4B&lt;br /&gt;
#define OP_Return			0x4C&lt;br /&gt;
#define OP_CreateLocalVariable		0x4D&lt;br /&gt;
#define OP_SafeSetVariableFieldCached0	0x4E&lt;br /&gt;
#define OP_GetBuiltinFunction		0x4F&lt;br /&gt;
#define OP_ScriptLocalMethodCall	0x50&lt;br /&gt;
#define OP_CallBuiltinMethodPointer			0x51&lt;br /&gt;
#define OP_ScriptLocalChildThreadCall		0x52&lt;br /&gt;
#define OP_GetSelfObject		0x53&lt;br /&gt;
#define OP_GetGame			0x54&lt;br /&gt;
#define OP_SetLevelFieldVariableField	0x55&lt;br /&gt;
#define OP_EvalArray			0x56&lt;br /&gt;
#define OP_GetSelf			0x57&lt;br /&gt;
#define OP_End				0x58&lt;br /&gt;
#define OP_EvalSelfFieldVariable	0x59&lt;br /&gt;
#define OP_less_equal			0x5A&lt;br /&gt;
#define OP_EvalLocalVariableCached0	0x5B&lt;br /&gt;
#define OP_EvalLocalVariableCached1	0x5C&lt;br /&gt;
#define OP_EvalLocalVariableCached2	0x5D&lt;br /&gt;
#define OP_EvalLocalVariableCached3	0x5E&lt;br /&gt;
#define OP_EvalLocalVariableCached4	0x5F&lt;br /&gt;
#define OP_EvalLocalVariableCached5	0x60&lt;br /&gt;
#define OP_EvalLocalVariableCached	0x61&lt;br /&gt;
#define OP_EvalNewLocalArrayRefCached0		0x62&lt;br /&gt;
#define OP_ScriptMethodChildThreadCallPointer		0x63&lt;br /&gt;
#define OP_EvalLocalVariableObjectCached		0x64&lt;br /&gt;
#define OP_ScriptLocalMethodThreadCall	0x65&lt;br /&gt;
#define OP_GetInteger		0x66&lt;br /&gt;
#define OP_ScriptMethodCallPointer		0x67&lt;br /&gt;
#define OP_checkclearparams	0x68&lt;br /&gt;
#define OP_SetAnimFieldVariableField	0x69&lt;br /&gt;
// nop&lt;br /&gt;
#define OP_minus  0x6B&lt;br /&gt;
#define OP_ScriptLocalFunctionCall2 0x6C&lt;br /&gt;
#define OP_GetNegUnsignedShort 0x6D&lt;br /&gt;
#define OP_GetNegByte		0x6E&lt;br /&gt;
#define OP_SafeCreateVariableFieldCached	0x6F&lt;br /&gt;
#define OP_greater_equal	0x70&lt;br /&gt;
#define OP_vector		0x71&lt;br /&gt;
#define OP_GetBuiltinMethod	0x72&lt;br /&gt;
#define OP_endswitch	0x73&lt;br /&gt;
#define OP_ClearArray	0x74&lt;br /&gt;
#define OP_DecTop	0x75&lt;br /&gt;
#define OP_CastBool	0x76&lt;br /&gt;
#define OP_EvalArrayRef	0x77&lt;br /&gt;
#define OP_SetNewLocalVariableFieldCached0		0x78&lt;br /&gt;
#define OP_GetZero			0x79&lt;br /&gt;
#define OP_wait				0x7A&lt;br /&gt;
#define OP_waittill			0x7B&lt;br /&gt;
#define OP_GetIString			0x7C&lt;br /&gt;
#define OP_ScriptFarFunctionCall	0x7D&lt;br /&gt;
#define OP_GetAnimObject		0x7E&lt;br /&gt;
#define OP_GetAnimTree			0x7F&lt;br /&gt;
#define OP_EvalLocalArrayCached		0x80&lt;br /&gt;
#define OP_mod				0x81&lt;br /&gt;
#define OP_ScriptFarThreadCall		0x82&lt;br /&gt;
#define OP_GetUnsignedShort		0x83&lt;br /&gt;
#define OP_clearparams		0x84&lt;br /&gt;
#define OP_ScriptMethodThreadCallPointer		0x85&lt;br /&gt;
#define OP_ScriptFunctionCallPointer		0x86&lt;br /&gt;
#define OP_EmptyArray		0x87&lt;br /&gt;
#define OP_SafeSetVariableFieldCached	0x88&lt;br /&gt;
// nop&lt;br /&gt;
#define OP_EvalFieldVariableRef		0x8A&lt;br /&gt;
#define OP_ScriptLocalMethodChildThreadCall	0x8B&lt;br /&gt;
// nop&lt;br /&gt;
#define OP_GetFloat			0x8D&lt;br /&gt;
#define OP_EvalLocalVariableRefCached	0x8E&lt;br /&gt;
#define OP_JumpOnFalse			0x8F&lt;br /&gt;
#define OP_BoolComplement		0x90&lt;br /&gt;
#define OP_ScriptThreadCallPointer			0x91&lt;br /&gt;
#define OP_ScriptFarFunctionCall2	0x92&lt;br /&gt;
#define OP_less				0x93&lt;br /&gt;
#define OP_BoolNot			0x94&lt;br /&gt;
#define OP_waittillFrameEnd		0x95&lt;br /&gt;
#define OP_GetString			0x96&lt;br /&gt;
#define OP_EvalLevelFieldVariable	0x97&lt;br /&gt;
#define OP_GetLevelObject	0x98&lt;br /&gt;
#define OP_inc			0x99&lt;br /&gt;
#define OP_CallBuiltinMethod0	0x9A&lt;br /&gt;
#define OP_CallBuiltinMethod1	0x9B&lt;br /&gt;
#define OP_CallBuiltinMethod2	0x9C&lt;br /&gt;
#define OP_CallBuiltinMethod3	0x9D&lt;br /&gt;
#define OP_CallBuiltinMethod4	0x9E&lt;br /&gt;
#define OP_CallBuiltinMethod5	0x9F&lt;br /&gt;
#define OP_CallBuiltinMethod	0xA0&lt;br /&gt;
#define OP_GetAnim		0xA1&lt;br /&gt;
#define OP_switch		0xA2&lt;br /&gt;
#define OP_SetVariableField	0xA3&lt;br /&gt;
#define OP_divide		0xA4&lt;br /&gt;
#define OP_GetLocalFunction		0xA5&lt;br /&gt;
#define OP_ScriptFarChildThreadCall	0xA6&lt;br /&gt;
#define OP_multiply			0xA7&lt;br /&gt;
#define OP_ClearLocalVariableFieldCached			0xA8&lt;br /&gt;
#define OP_EvalAnimFieldVariableRef	0xA9&lt;br /&gt;
#define OP_EvalLocalArrayRefCached	0xAA&lt;br /&gt;
#define OP_EvalLocalVariableRefCached0	0xAB&lt;br /&gt;
#define OP_bit_and			0xAC&lt;br /&gt;
#define OP_GetAnimation			0xAD&lt;br /&gt;
#define OP_GetFarFunction			0xAE&lt;br /&gt;
#define OP_CallBuiltinPointer			0xAF&lt;br /&gt;
#define OP_jump				0xB0&lt;br /&gt;
#define OP_PreScriptCall		0xB1&lt;br /&gt;
#define OP_ScriptFarMethodCall	0xB2&lt;br /&gt;
#define OP_inequality		0xB3&lt;br /&gt;
#define OP_ScriptLocalFunctionCall	0xB4&lt;br /&gt;
#define OP_bit_ex_or		0xB5&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
==== PC ====&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#define OP_SetNewLocalVariableFieldCached0		0x17&lt;br /&gt;
#define OP_EvalSelfFieldVariable	0x18&lt;br /&gt;
#define OP_Return					0x19&lt;br /&gt;
#define OP_CallBuiltin0				0x1A&lt;br /&gt;
#define OP_CallBuiltin1				0x1B&lt;br /&gt;
#define OP_CallBuiltin2				0x1C&lt;br /&gt;
#define OP_CallBuiltin3				0x1D&lt;br /&gt;
#define OP_CallBuiltin4				0x1E&lt;br /&gt;
#define OP_CallBuiltin5				0x1F&lt;br /&gt;
#define OP_CallBuiltin				0x20&lt;br /&gt;
#define OP_BoolNot					0x21&lt;br /&gt;
#define OP_ScriptFarMethodThreadCall		0x22&lt;br /&gt;
#define OP_JumpOnTrueExpr					0x23&lt;br /&gt;
#define OP_SetLevelFieldVariableField		0x24&lt;br /&gt;
#define OP_CastBool							0x25&lt;br /&gt;
#define OP_EvalNewLocalArrayRefCached0		0x26&lt;br /&gt;
#define OP_CallBuiltinPointer		0x27&lt;br /&gt;
#define OP_inequality				0x28&lt;br /&gt;
#define OP_GetThisthread			0x29&lt;br /&gt;
#define OP_ClearFieldVariable		0x2A&lt;br /&gt;
#define OP_GetFloat					0x2B&lt;br /&gt;
#define OP_SafeCreateVariableFieldCached	0x2C&lt;br /&gt;
#define OP_ScriptFarFunctionCall2			0x2D&lt;br /&gt;
#define OP_ScriptFarFunctionCall			0x2E&lt;br /&gt;
#define OP_ScriptFarChildThreadCall			0x2F&lt;br /&gt;
#define OP_ClearLocalVariableFieldCached0		0x30&lt;br /&gt;
#define OP_ClearLocalVariableFieldCached		0x31&lt;br /&gt;
#define OP_checkclearparams		0x32&lt;br /&gt;
#define OP_CastFieldObject		0x33&lt;br /&gt;
#define OP_End					0x34&lt;br /&gt;
#define OP_size					0x35&lt;br /&gt;
#define OP_EmptyArray			0x36&lt;br /&gt;
#define OP_bit_and				0x37&lt;br /&gt;
#define OP_less_equal			0x38&lt;br /&gt;
#define OP_voidCodepos			0x39&lt;br /&gt;
#define OP_ScriptMethodThreadCallPointer	0x3A&lt;br /&gt;
#define OP_endswitch						0x3B&lt;br /&gt;
#define OP_ClearVariableField				0x3C&lt;br /&gt;
#define OP_divide							0x3D&lt;br /&gt;
#define OP_ScriptFarMethodChildThreadCall	0x3E&lt;br /&gt;
#define OP_GetUnsignedShort				0x3F&lt;br /&gt;
#define OP_JumpOnTrue					0x40&lt;br /&gt;
#define OP_GetSelf						0x41&lt;br /&gt;
#define OP_ScriptFarThreadCall			0x42&lt;br /&gt;
#define OP_ScriptLocalThreadCall		0x43&lt;br /&gt;
#define OP_SetLocalVariableFieldCached0		0x44&lt;br /&gt;
#define OP_SetLocalVariableFieldCached		0x45&lt;br /&gt;
#define OP_plus							0x46&lt;br /&gt;
#define OP_BoolComplement				0x47&lt;br /&gt;
#define OP_ScriptMethodCallPointer		0x48&lt;br /&gt;
#define OP_inc							0x49&lt;br /&gt;
#define OP_RemoveLocalVariables			0x4A&lt;br /&gt;
#define OP_JumpOnFalseExpr				0x4B&lt;br /&gt;
#define OP_switch						0x4C&lt;br /&gt;
#define OP_clearparams					0x4D&lt;br /&gt;
#define OP_EvalLocalVariableRefCached0		0x4E&lt;br /&gt;
#define OP_EvalLocalVariableRefCached		0x4F&lt;br /&gt;
#define OP_ScriptLocalMethodCall		0x50&lt;br /&gt;
#define OP_EvalFieldVariable		0x51&lt;br /&gt;
#define OP_EvalFieldVariableRef		0x52&lt;br /&gt;
#define OP_GetString				0x53&lt;br /&gt;
#define OP_ScriptFunctionCallPointer	0x54&lt;br /&gt;
#define OP_EvalLevelFieldVariable		0x55&lt;br /&gt;
#define OP_GetVector			0x56&lt;br /&gt;
#define OP_endon				0x57&lt;br /&gt;
#define OP_greater_equal		0x58&lt;br /&gt;
#define OP_GetSelfObject		0x59&lt;br /&gt;
#define OP_SetAnimFieldVariableField	0x5A&lt;br /&gt;
#define OP_SetVariableField				0x5B&lt;br /&gt;
#define OP_ScriptLocalFunctionCall2		0x5C&lt;br /&gt;
#define OP_ScriptLocalFunctionCall		0x5D&lt;br /&gt;
#define OP_EvalLocalArrayRefCached0		0x5E&lt;br /&gt;
#define OP_EvalLocalArrayRefCached		0x5F&lt;br /&gt;
#define OP_GetFarFunction		0x60&lt;br /&gt;
#define OP_less					0x61&lt;br /&gt;
#define OP_GetGameRef			0x62&lt;br /&gt;
#define OP_waittillFrameEnd		0x63&lt;br /&gt;
#define OP_SafeSetVariableFieldCached0		0x64&lt;br /&gt;
#define OP_SafeSetVariableFieldCached		0x65&lt;br /&gt;
#define OP_ScriptMethodChildThreadCallPointer		0x66&lt;br /&gt;
#define OP_GetLevel			0x67&lt;br /&gt;
#define OP_notify			0x68&lt;br /&gt;
#define OP_DecTop			0x69&lt;br /&gt;
#define OP_shift_left		0x6A&lt;br /&gt;
#define OP_ScriptLocalMethodThreadCall		0x6B&lt;br /&gt;
#define OP_ScriptLocalMethodChildThreadCall	0x6C&lt;br /&gt;
#define OP_greater						0x6D&lt;br /&gt;
#define OP_EvalLocalVariableCached0		0x6E&lt;br /&gt;
#define OP_EvalLocalVariableCached1		0x6F&lt;br /&gt;
#define OP_EvalLocalVariableCached2		0x70&lt;br /&gt;
#define OP_EvalLocalVariableCached3		0x71&lt;br /&gt;
#define OP_EvalLocalVariableCached4		0x72&lt;br /&gt;
#define OP_EvalLocalVariableCached5		0x73&lt;br /&gt;
#define OP_EvalLocalVariableCached		0x74&lt;br /&gt;
#define OP_SafeSetWaittillVariableFieldCached		0x75&lt;br /&gt;
#define OP_jump							0x76&lt;br /&gt;
#define OP_ScriptThreadCallPointer		0x77&lt;br /&gt;
#define OP_GetZero				0x78&lt;br /&gt;
#define OP_wait					0x79&lt;br /&gt;
#define OP_minus				0x7A&lt;br /&gt;
#define OP_SetSelfFieldVariableField		0x7B&lt;br /&gt;
#define OP_EvalNewLocalVariableRefCached0	0x7C&lt;br /&gt;
#define OP_multiply						0x7D&lt;br /&gt;
#define OP_CreateLocalVariable			0x7E&lt;br /&gt;
#define OP_ScriptLocalChildThreadCall	0x7F&lt;br /&gt;
#define OP_GetInteger					0x80&lt;br /&gt;
#define OP_mod							0x81&lt;br /&gt;
#define OP_EvalAnimFieldVariableRef		0x82&lt;br /&gt;
#define OP_GetBuiltinFunction			0x83&lt;br /&gt;
#define OP_GetGame				0x84&lt;br /&gt;
#define OP_waittill				0x85&lt;br /&gt;
#define OP_dec					0x86&lt;br /&gt;
#define OP_EvalLocalVariableObjectCached	0x87&lt;br /&gt;
#define OP_PreScriptCall		0x88&lt;br /&gt;
#define OP_GetAnim				0x89&lt;br /&gt;
#define OP_GetUndefined			0x8A&lt;br /&gt;
#define OP_EvalLevelFieldVariableRef		0x8B&lt;br /&gt;
#define OP_GetAnimObject		0x8C&lt;br /&gt;
#define OP_GetLevelObject		0x8D&lt;br /&gt;
#define OP_bit_ex_or			0x8E&lt;br /&gt;
#define OP_equality				0x8F&lt;br /&gt;
#define OP_ClearArray			0x90&lt;br /&gt;
#define OP_jumpback				0x91&lt;br /&gt;
#define OP_GetAnimation			0x92&lt;br /&gt;
#define OP_EvalAnimFieldVariable		0x93&lt;br /&gt;
#define OP_GetAnimTree					0x94&lt;br /&gt;
#define OP_GetIString					0x95&lt;br /&gt;
#define OP_EvalArrayRef					0x96&lt;br /&gt;
#define OP_EvalSelfFieldVariableRef		0x97&lt;br /&gt;
#define OP_GetNegByte					0x98&lt;br /&gt;
#define OP_GetBuiltinMethod				0x99&lt;br /&gt;
#define OP_CallBuiltinMethodPointer		0x9A&lt;br /&gt;
#define OP_EvalArray				0x9B&lt;br /&gt;
#define OP_vector					0x9C&lt;br /&gt;
#define OP_ScriptFarMethodCall		0x9D&lt;br /&gt;
#define OP_EvalLocalArrayCached		0x9E&lt;br /&gt;
#define OP_GetByte					0x9F&lt;br /&gt;
#define OP_ScriptChildThreadCallPointer		0xA0&lt;br /&gt;
#define OP_bit_or				0xA1&lt;br /&gt;
#define OP_AddArray				0xA2&lt;br /&gt;
#define OP_waittillmatch2		0xA3&lt;br /&gt;
#define OP_waittillmatch		0xA4&lt;br /&gt;
#define OP_GetLocalFunction		0xA5&lt;br /&gt;
#define OP_GetNegUnsignedShort		0xA6&lt;br /&gt;
#define OP_shift_right				0xA7&lt;br /&gt;
#define OP_CallBuiltinMethod0		0xA8&lt;br /&gt;
#define OP_CallBuiltinMethod1		0xA9&lt;br /&gt;
#define OP_CallBuiltinMethod2		0xAA&lt;br /&gt;
#define OP_CallBuiltinMethod3		0xAB&lt;br /&gt;
#define OP_CallBuiltinMethod4		0xAC&lt;br /&gt;
#define OP_CallBuiltinMethod5		0xAD&lt;br /&gt;
#define OP_CallBuiltinMethod		0xAE&lt;br /&gt;
#define OP_JumpOnFalse				0xAF&lt;br /&gt;
#define OP_count				0xB0&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
=== Advanced Warfare ===&lt;br /&gt;
The opcodes for AW haven&#039;t changed from Ghosts except for the newly introduced opcode OP_waitFrame.&lt;br /&gt;
==== PS3 ====&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#define OP_CastFieldObject			0x1D&lt;br /&gt;
#define OP_SetLocalVariableFieldCached	0x1E&lt;br /&gt;
#define OP_plus				0x1F&lt;br /&gt;
#define OP_RemoveLocalVariables		0x20&lt;br /&gt;
#define OP_EvalSelfFieldVariableRef	0x21&lt;br /&gt;
#define OP_ScriptFarMethodChildThreadCall	0x22&lt;br /&gt;
#define OP_GetGameRef			0x23&lt;br /&gt;
#define OP_EvalAnimFieldVariable	0x24&lt;br /&gt;
#define OP_EvalLevelFieldVariableRef	0x25&lt;br /&gt;
#define OP_GetThisthread		0x26&lt;br /&gt;
#define OP_greater		0x27&lt;br /&gt;
#define OP_waittillmatch	0x28&lt;br /&gt;
#define OP_shift_right		0x29&lt;br /&gt;
#define OP_dec			0x2A&lt;br /&gt;
#define OP_JumpOnTrue	0x2B&lt;br /&gt;
#define OP_bit_or	0x2C&lt;br /&gt;
#define OP_equality	0x2D&lt;br /&gt;
#define OP_ClearLocalVariableFieldCached0	0x2E&lt;br /&gt;
#define OP_notify	0x2F&lt;br /&gt;
#define OP_GetVector	0x30&lt;br /&gt;
#define OP_ScriptMethodChildThreadCallPointer	0x31&lt;br /&gt;
#define OP_PreScriptCall	0x32&lt;br /&gt;
#define OP_GetByte	0x33&lt;br /&gt;
#define OP_ScriptFarMethodThreadCall		0x34&lt;br /&gt;
#define OP_SetSelfFieldVariableField	0x35&lt;br /&gt;
#define OP_JumpOnFalseExpr		0x36&lt;br /&gt;
#define OP_GetUndefined		0x37&lt;br /&gt;
#define OP_jumpback		0x38&lt;br /&gt;
#define OP_JumpOnTrueExpr	0x39&lt;br /&gt;
#define OP_CallBuiltin0		0x3A&lt;br /&gt;
#define OP_CallBuiltin1		0x3B&lt;br /&gt;
#define OP_CallBuiltin2		0x3C&lt;br /&gt;
#define OP_CallBuiltin3		0x3D&lt;br /&gt;
#define OP_CallBuiltin4		0x3E&lt;br /&gt;
#define OP_CallBuiltin5		0x3F&lt;br /&gt;
#define OP_CallBuiltin		0x40&lt;br /&gt;
#define OP_SetLocalVariableFieldCached0		0x41&lt;br /&gt;
#define OP_ClearFieldVariable	0x42&lt;br /&gt;
#define OP_GetLevel		0x43&lt;br /&gt;
#define OP_size			0x44&lt;br /&gt;
#define OP_SafeSetWaittillVariableFieldCached	0x45&lt;br /&gt;
#define OP_ScriptLocalThreadCall			0x46&lt;br /&gt;
#define OP_AddArray			0x47&lt;br /&gt;
#define OP_endon			0x48&lt;br /&gt;
#define OP_EvalFieldVariable		0x49&lt;br /&gt;
#define OP_shift_left			0x4A&lt;br /&gt;
#define OP_EvalLocalArrayRefCached0	0x4B&lt;br /&gt;
#define OP_Return			0x4C&lt;br /&gt;
#define OP_CreateLocalVariable		0x4D&lt;br /&gt;
#define OP_SafeSetVariableFieldCached0	0x4E&lt;br /&gt;
#define OP_GetBuiltinFunction		0x4F&lt;br /&gt;
#define OP_ScriptLocalMethodCall	0x50&lt;br /&gt;
#define OP_CallBuiltinMethodPointer			0x51&lt;br /&gt;
#define OP_ScriptLocalChildThreadCall		0x52&lt;br /&gt;
#define OP_GetSelfObject		0x53&lt;br /&gt;
#define OP_GetGame			0x54&lt;br /&gt;
#define OP_SetLevelFieldVariableField	0x55&lt;br /&gt;
#define OP_EvalArray			0x56&lt;br /&gt;
#define OP_GetSelf			0x57&lt;br /&gt;
#define OP_End				0x58&lt;br /&gt;
#define OP_EvalSelfFieldVariable	0x59&lt;br /&gt;
#define OP_less_equal			0x5A&lt;br /&gt;
#define OP_EvalLocalVariableCached0	0x5B&lt;br /&gt;
#define OP_EvalLocalVariableCached1	0x5C&lt;br /&gt;
#define OP_EvalLocalVariableCached2	0x5D&lt;br /&gt;
#define OP_EvalLocalVariableCached3	0x5E&lt;br /&gt;
#define OP_EvalLocalVariableCached4	0x5F&lt;br /&gt;
#define OP_EvalLocalVariableCached5	0x60&lt;br /&gt;
#define OP_EvalLocalVariableCached	0x61&lt;br /&gt;
#define OP_EvalNewLocalArrayRefCached0		0x62&lt;br /&gt;
#define OP_ScriptMethodChildThreadCallPointer		0x63&lt;br /&gt;
#define OP_EvalLocalVariableObjectCached		0x64&lt;br /&gt;
#define OP_ScriptLocalMethodThreadCall	0x65&lt;br /&gt;
#define OP_GetInteger		0x66&lt;br /&gt;
#define OP_ScriptMethodCallPointer		0x67&lt;br /&gt;
#define OP_checkclearparams	0x68&lt;br /&gt;
#define OP_SetAnimFieldVariableField	0x69&lt;br /&gt;
// nop&lt;br /&gt;
#define OP_minus  0x6B&lt;br /&gt;
#define OP_ScriptLocalFunctionCall2 0x6C&lt;br /&gt;
#define OP_GetNegUnsignedShort 0x6D&lt;br /&gt;
#define OP_GetNegByte		0x6E&lt;br /&gt;
#define OP_SafeCreateVariableFieldCached	0x6F&lt;br /&gt;
#define OP_greater_equal	0x70&lt;br /&gt;
#define OP_vector		0x71&lt;br /&gt;
#define OP_GetBuiltinMethod	0x72&lt;br /&gt;
#define OP_endswitch	0x73&lt;br /&gt;
#define OP_ClearArray	0x74&lt;br /&gt;
#define OP_DecTop	0x75&lt;br /&gt;
#define OP_CastBool	0x76&lt;br /&gt;
#define OP_EvalArrayRef	0x77&lt;br /&gt;
#define OP_SetNewLocalVariableFieldCached0		0x78&lt;br /&gt;
#define OP_GetZero			0x79&lt;br /&gt;
#define OP_wait				0x7A&lt;br /&gt;
#define OP_waittill			0x7B&lt;br /&gt;
#define OP_GetIString			0x7C&lt;br /&gt;
#define OP_ScriptFarFunctionCall	0x7D&lt;br /&gt;
#define OP_GetAnimObject		0x7E&lt;br /&gt;
#define OP_GetAnimTree			0x7F&lt;br /&gt;
#define OP_EvalLocalArrayCached		0x80&lt;br /&gt;
#define OP_mod				0x81&lt;br /&gt;
#define OP_ScriptFarThreadCall		0x82&lt;br /&gt;
#define OP_GetUnsignedShort		0x83&lt;br /&gt;
#define OP_clearparams		0x84&lt;br /&gt;
#define OP_ScriptMethodThreadCallPointer		0x85&lt;br /&gt;
#define OP_ScriptFunctionCallPointer		0x86&lt;br /&gt;
#define OP_EmptyArray		0x87&lt;br /&gt;
#define OP_SafeSetVariableFieldCached	0x88&lt;br /&gt;
// nop&lt;br /&gt;
#define OP_EvalFieldVariableRef		0x8A&lt;br /&gt;
#define OP_ScriptLocalMethodChildThreadCall	0x8B&lt;br /&gt;
// nop&lt;br /&gt;
#define OP_GetFloat			0x8D&lt;br /&gt;
#define OP_EvalLocalVariableRefCached	0x8E&lt;br /&gt;
#define OP_JumpOnFalse			0x8F&lt;br /&gt;
#define OP_BoolComplement		0x90&lt;br /&gt;
#define OP_ScriptThreadCallPointer			0x91&lt;br /&gt;
#define OP_ScriptFarFunctionCall2	0x92&lt;br /&gt;
#define OP_less				0x93&lt;br /&gt;
#define OP_BoolNot			0x94&lt;br /&gt;
#define OP_waittillFrameEnd		0x95&lt;br /&gt;
#define OP_waitFrame			0x96&lt;br /&gt;
#define OP_GetString			0x97&lt;br /&gt;
#define OP_EvalLevelFieldVariable	0x98&lt;br /&gt;
#define OP_GetLevelObject	0x99&lt;br /&gt;
#define OP_inc			0x9A&lt;br /&gt;
#define OP_CallBuiltinMethod0	0x9B&lt;br /&gt;
#define OP_CallBuiltinMethod1	0x9C&lt;br /&gt;
#define OP_CallBuiltinMethod2	0x9D&lt;br /&gt;
#define OP_CallBuiltinMethod3	0x9E&lt;br /&gt;
#define OP_CallBuiltinMethod4	0x9F&lt;br /&gt;
#define OP_CallBuiltinMethod5	0xA0&lt;br /&gt;
#define OP_CallBuiltinMethod	0xA1&lt;br /&gt;
#define OP_GetAnim		0xA2&lt;br /&gt;
#define OP_switch		0xA3&lt;br /&gt;
#define OP_SetVariableField	0xA4&lt;br /&gt;
#define OP_divide		0xA5&lt;br /&gt;
#define OP_GetLocalFunction		0xA6&lt;br /&gt;
#define OP_ScriptFarChildThreadCall	0xA7&lt;br /&gt;
#define OP_multiply			0xA8&lt;br /&gt;
#define OP_ClearLocalVariableFieldCached			0xA9&lt;br /&gt;
#define OP_EvalAnimFieldVariableRef	0xAA&lt;br /&gt;
#define OP_EvalLocalArrayRefCached	0xAB&lt;br /&gt;
#define OP_EvalLocalVariableRefCached0	0xAC&lt;br /&gt;
#define OP_bit_and			0xAD&lt;br /&gt;
#define OP_GetAnimation			0xAE&lt;br /&gt;
#define OP_GetFarFunction			0xAF&lt;br /&gt;
#define OP_CallBuiltinPointer			0xB0&lt;br /&gt;
#define OP_jump				0xB1&lt;br /&gt;
#define OP_voidCodePos		0xB2&lt;br /&gt;
#define OP_ScriptFarMethodCall	0xB3&lt;br /&gt;
#define OP_inequality		0xB4&lt;br /&gt;
#define OP_ScriptLocalFunctionCall	0xB5&lt;br /&gt;
#define OP_bit_ex_or		0xB6&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
=== OP_waitFrame ===&lt;br /&gt;
This opcode was introduced as a replacement for the function waitframe inside common_scripts/utility.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
waitframe()&lt;br /&gt;
{&lt;br /&gt;
	wait( 0.05 );&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
=== OP_EvalLocalArrayRefCached0 ===&lt;br /&gt;
This opcode evaluates the last created local array using OP_EvalArrayRef internally.&lt;br /&gt;
=== OP_EvalNewLocalArrayRefCached0 ===&lt;br /&gt;
This opcode is used to create a local array and set one of its elements without having to initialize it first. This opcode jumps internally to OP_EvalLocalArrayRefCached0.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
array[&amp;quot;friendly&amp;quot;] = 3;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
The asm:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
OP_GetByte 3&lt;br /&gt;
OP_GetString &amp;quot;friendly&amp;quot;&lt;br /&gt;
OP_EvalNewLocalArrayRefCached0 0&lt;br /&gt;
OP_SetVariableField&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
=== OP_EvalArrayRef ===&lt;br /&gt;
This opcode is used to evaluate an array index to &#039;&#039;&#039;set&#039;&#039;&#039; its value afterwards. The first ent on the stack is the index, the second ent is the value.&lt;br /&gt;
In scriptfiles, this opcode is only used to evaluate fields.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
level.array[0] = 1;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
The asm:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
OP_GetByte 1&lt;br /&gt;
OP_GetZero&lt;br /&gt;
OP_EvalLevelFieldVariableRef array&lt;br /&gt;
OP_EvalArrayRef&lt;br /&gt;
OP_SetVariableField&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
=== OP_AddArray ===&lt;br /&gt;
This opcode is used to append an object of any type to an array. When initializing a new array, it starts off from an empty one.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
array = [ 0, 1 ];&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
The asm:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
OP_EmptyArray&lt;br /&gt;
OP_GetZero&lt;br /&gt;
OP_AddArray&lt;br /&gt;
OP_GetByte 1&lt;br /&gt;
OP_AddArray&lt;br /&gt;
OP_SetNewLocalVariableFieldCached0 0&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
This opcode can also build on another array, but is not supposed to be used like this.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
array2 = array + [ 2.0, &amp;quot;3&amp;quot; ];&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
The asm:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
OP_EvalLocalVariableCached0&lt;br /&gt;
OP_GetFloat 2.0&lt;br /&gt;
OP_AddArray&lt;br /&gt;
OP_GetString &amp;quot;3&amp;quot;&lt;br /&gt;
OP_AddArray&lt;br /&gt;
OP_SetNewLocalVariableFieldCached0 1&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== OP_SetNewLocalVariableFieldCached0 ===&lt;br /&gt;
This creates a new local variable and then sets the ent on the stack as its value. The variable index is stored as a byte after the opcode.&lt;br /&gt;
=== OP_CallBuiltin ===&lt;br /&gt;
These opcodes are used to make calls to native functions built into the game&#039;s executable. Unlike methods, these functions do not pass any objects. For opcodes OP_CallBuiltin0 through OP_CallBuiltin5, the number it ends with is the number of parameters to be passed to the function. For OP_CallBuiltin, the number of parameters is loaded after the opcode as an 8 bit integer. The function id is then loaded as a 16 bit integer. That value is then used as an index in the function table below.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; class=&amp;quot;article-table mw-collapsible mw-collapsed wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!rowspan=&amp;quot;2&amp;quot;|Function&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|MW3&lt;br /&gt;
|-&lt;br /&gt;
!PC ID&lt;br /&gt;
!PS3/XBOX ID&lt;br /&gt;
&amp;lt;!-- funcion list 1 --&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|createprintchannel&lt;br /&gt;
|N/A&lt;br /&gt;
|0x1&lt;br /&gt;
|-&lt;br /&gt;
|setprintchannel&lt;br /&gt;
|0xe&lt;br /&gt;
|0x2&lt;br /&gt;
|-&lt;br /&gt;
|print&lt;br /&gt;
|0xf&lt;br /&gt;
|0x3&lt;br /&gt;
|-&lt;br /&gt;
|println&lt;br /&gt;
|0x10&lt;br /&gt;
|0x4&lt;br /&gt;
|-&lt;br /&gt;
|print3d&lt;br /&gt;
|0x11&lt;br /&gt;
|0x5&lt;br /&gt;
|-&lt;br /&gt;
|line&lt;br /&gt;
|0x12&lt;br /&gt;
|0x6&lt;br /&gt;
|-&lt;br /&gt;
|precacheturret&lt;br /&gt;
|N/A&lt;br /&gt;
|0x7&lt;br /&gt;
|-&lt;br /&gt;
|getweaponarray&lt;br /&gt;
|N/A&lt;br /&gt;
|0x8&lt;br /&gt;
|-&lt;br /&gt;
|spawnturret&lt;br /&gt;
|0x13&lt;br /&gt;
|0x9&lt;br /&gt;
|-&lt;br /&gt;
|canspawnturret&lt;br /&gt;
|0x14&lt;br /&gt;
|0xa&lt;br /&gt;
|-&lt;br /&gt;
|assert&lt;br /&gt;
|0x15&lt;br /&gt;
|0xb&lt;br /&gt;
|-&lt;br /&gt;
|assertex&lt;br /&gt;
|0x26&lt;br /&gt;
|0xc&lt;br /&gt;
|-&lt;br /&gt;
|assertmsg&lt;br /&gt;
|0x27&lt;br /&gt;
|0xd&lt;br /&gt;
|-&lt;br /&gt;
|isdefined&lt;br /&gt;
|0x28&lt;br /&gt;
|0xe&lt;br /&gt;
|-&lt;br /&gt;
|isstring&lt;br /&gt;
|0x29&lt;br /&gt;
|0xf&lt;br /&gt;
|-&lt;br /&gt;
|setdvar&lt;br /&gt;
|0x2a&lt;br /&gt;
|0x10&lt;br /&gt;
|-&lt;br /&gt;
|setdynamicdvar&lt;br /&gt;
|0x2b&lt;br /&gt;
|0x11&lt;br /&gt;
|-&lt;br /&gt;
|setdvarifuninitialized&lt;br /&gt;
|0x2c&lt;br /&gt;
|0x12&lt;br /&gt;
|-&lt;br /&gt;
|setdevdvar&lt;br /&gt;
|0x2d&lt;br /&gt;
|0x13&lt;br /&gt;
|-&lt;br /&gt;
|setdevdvarifuninitialized&lt;br /&gt;
|0x2e&lt;br /&gt;
|0x14&lt;br /&gt;
|-&lt;br /&gt;
|getdvar&lt;br /&gt;
|0x2f&lt;br /&gt;
|0x15&lt;br /&gt;
|-&lt;br /&gt;
|getdvarint&lt;br /&gt;
|0x30&lt;br /&gt;
|0x16&lt;br /&gt;
|-&lt;br /&gt;
|getdvarfloat&lt;br /&gt;
|0x31&lt;br /&gt;
|0x17&lt;br /&gt;
|-&lt;br /&gt;
|getdvarvector&lt;br /&gt;
|0x32&lt;br /&gt;
|0x18&lt;br /&gt;
|-&lt;br /&gt;
|gettime&lt;br /&gt;
|0x33&lt;br /&gt;
|0x19&lt;br /&gt;
|-&lt;br /&gt;
|getentbynum&lt;br /&gt;
|0x34&lt;br /&gt;
|0x1a&lt;br /&gt;
|-&lt;br /&gt;
|getweaponmodel&lt;br /&gt;
|0x35&lt;br /&gt;
|0x1b&lt;br /&gt;
|-&lt;br /&gt;
|getweaponhidetags&lt;br /&gt;
|0x51&lt;br /&gt;
|0x1c&lt;br /&gt;
|-&lt;br /&gt;
|getanimlength&lt;br /&gt;
|0x52&lt;br /&gt;
|0x1d&lt;br /&gt;
|-&lt;br /&gt;
|animhasnotetrack&lt;br /&gt;
|0x53&lt;br /&gt;
|0x1e&lt;br /&gt;
|-&lt;br /&gt;
|getnotetracktimes&lt;br /&gt;
|0x54&lt;br /&gt;
|0x1f&lt;br /&gt;
|-&lt;br /&gt;
|spawn&lt;br /&gt;
|0x55&lt;br /&gt;
|0x20&lt;br /&gt;
|-&lt;br /&gt;
|spawnloopsound&lt;br /&gt;
|0x56&lt;br /&gt;
|0x21&lt;br /&gt;
|-&lt;br /&gt;
|bullettrace&lt;br /&gt;
|0x57&lt;br /&gt;
|0x22&lt;br /&gt;
|-&lt;br /&gt;
|bullettracepassed&lt;br /&gt;
|0x58&lt;br /&gt;
|0x23&lt;br /&gt;
|-&lt;br /&gt;
|sighttracepassed&lt;br /&gt;
|0x74&lt;br /&gt;
|0x24&lt;br /&gt;
|-&lt;br /&gt;
|physicstrace&lt;br /&gt;
|0x75&lt;br /&gt;
|0x25&lt;br /&gt;
|-&lt;br /&gt;
|physicstracenormal&lt;br /&gt;
|0x76&lt;br /&gt;
|0x26&lt;br /&gt;
|-&lt;br /&gt;
|playerphysicstrace&lt;br /&gt;
|0x77&lt;br /&gt;
|0x27&lt;br /&gt;
|-&lt;br /&gt;
|getgroundposition&lt;br /&gt;
|0x78&lt;br /&gt;
|0x28&lt;br /&gt;
|-&lt;br /&gt;
|getmovedelta&lt;br /&gt;
|0x79&lt;br /&gt;
|0x29&lt;br /&gt;
|-&lt;br /&gt;
|getangledelta&lt;br /&gt;
|0x7a&lt;br /&gt;
|0x2a&lt;br /&gt;
|-&lt;br /&gt;
|getnorthyaw&lt;br /&gt;
|0x7b&lt;br /&gt;
|0x2b&lt;br /&gt;
|-&lt;br /&gt;
|setnorthyaw&lt;br /&gt;
|0x96&lt;br /&gt;
|0x2c&lt;br /&gt;
|-&lt;br /&gt;
|setslowmotion&lt;br /&gt;
|0x97&lt;br /&gt;
|0x2d&lt;br /&gt;
|-&lt;br /&gt;
|randomint&lt;br /&gt;
|0x98&lt;br /&gt;
|0x2e&lt;br /&gt;
|-&lt;br /&gt;
|randomfloat&lt;br /&gt;
|0x99&lt;br /&gt;
|0x2f&lt;br /&gt;
|-&lt;br /&gt;
|randomintrange&lt;br /&gt;
|0x9a&lt;br /&gt;
|0x30&lt;br /&gt;
|-&lt;br /&gt;
|randomfloatrange&lt;br /&gt;
|0x9b&lt;br /&gt;
|0x31&lt;br /&gt;
|-&lt;br /&gt;
|sin&lt;br /&gt;
|0x9c&lt;br /&gt;
|0x32&lt;br /&gt;
|-&lt;br /&gt;
|cos&lt;br /&gt;
|0x9d&lt;br /&gt;
|0x33&lt;br /&gt;
|-&lt;br /&gt;
|tan&lt;br /&gt;
|0x9e&lt;br /&gt;
|0x34&lt;br /&gt;
|-&lt;br /&gt;
|asin&lt;br /&gt;
|0x9f&lt;br /&gt;
|0x35&lt;br /&gt;
|-&lt;br /&gt;
|acos&lt;br /&gt;
|0xa0&lt;br /&gt;
|0x36&lt;br /&gt;
|-&lt;br /&gt;
|atan&lt;br /&gt;
|0xa1&lt;br /&gt;
|0x37&lt;br /&gt;
|-&lt;br /&gt;
|int&lt;br /&gt;
|0xa2&lt;br /&gt;
|0x38&lt;br /&gt;
|-&lt;br /&gt;
|float&lt;br /&gt;
|0xa3&lt;br /&gt;
|0x39&lt;br /&gt;
|-&lt;br /&gt;
|abs&lt;br /&gt;
|0xa4&lt;br /&gt;
|0x3a&lt;br /&gt;
|-&lt;br /&gt;
|min&lt;br /&gt;
|0xa5&lt;br /&gt;
|0x3b&lt;br /&gt;
|-&lt;br /&gt;
|max&lt;br /&gt;
|0xc6&lt;br /&gt;
|0x3c&lt;br /&gt;
|-&lt;br /&gt;
|floor&lt;br /&gt;
|0xc7&lt;br /&gt;
|0x3d&lt;br /&gt;
|-&lt;br /&gt;
|ceil&lt;br /&gt;
|0xc8&lt;br /&gt;
|0x3e&lt;br /&gt;
|-&lt;br /&gt;
|exp&lt;br /&gt;
|0xc9&lt;br /&gt;
|0x3f&lt;br /&gt;
|-&lt;br /&gt;
|log&lt;br /&gt;
|0xca&lt;br /&gt;
|0x40&lt;br /&gt;
|-&lt;br /&gt;
|sqrt&lt;br /&gt;
|0xcb&lt;br /&gt;
|0x41&lt;br /&gt;
|-&lt;br /&gt;
|squared&lt;br /&gt;
|0xcc&lt;br /&gt;
|0x42&lt;br /&gt;
|-&lt;br /&gt;
|clamp&lt;br /&gt;
|0xcd&lt;br /&gt;
|0x43&lt;br /&gt;
|-&lt;br /&gt;
|angleclamp&lt;br /&gt;
|0xce&lt;br /&gt;
|0x44&lt;br /&gt;
|-&lt;br /&gt;
|angleclamp180&lt;br /&gt;
|0xcf&lt;br /&gt;
|0x45&lt;br /&gt;
|-&lt;br /&gt;
|vectorfromlinetopoint&lt;br /&gt;
|0xd0&lt;br /&gt;
|0x46&lt;br /&gt;
|-&lt;br /&gt;
|pointonsegmentnearesttopoint&lt;br /&gt;
|0xd1&lt;br /&gt;
|0x47&lt;br /&gt;
|-&lt;br /&gt;
|distance&lt;br /&gt;
|0xd2&lt;br /&gt;
|0x48&lt;br /&gt;
|-&lt;br /&gt;
|distance2d&lt;br /&gt;
|0xd3&lt;br /&gt;
|0x49&lt;br /&gt;
|-&lt;br /&gt;
|distancesquared&lt;br /&gt;
|0xd4&lt;br /&gt;
|0x4a&lt;br /&gt;
|-&lt;br /&gt;
|length&lt;br /&gt;
|0xd5&lt;br /&gt;
|0x4b&lt;br /&gt;
|-&lt;br /&gt;
|lengthsquared&lt;br /&gt;
|0xd6&lt;br /&gt;
|0x4c&lt;br /&gt;
|-&lt;br /&gt;
|closer&lt;br /&gt;
|0xd7&lt;br /&gt;
|0x4d&lt;br /&gt;
|-&lt;br /&gt;
|vectordot&lt;br /&gt;
|0xd8&lt;br /&gt;
|0x4e&lt;br /&gt;
|-&lt;br /&gt;
|vectornormalize&lt;br /&gt;
|0xf6&lt;br /&gt;
|0x4f&lt;br /&gt;
|-&lt;br /&gt;
|vectortoangles&lt;br /&gt;
|0xf7&lt;br /&gt;
|0x50&lt;br /&gt;
|-&lt;br /&gt;
|vectortoyaw&lt;br /&gt;
|0xf8&lt;br /&gt;
|0x51&lt;br /&gt;
|-&lt;br /&gt;
|vectorlerp&lt;br /&gt;
|0xf9&lt;br /&gt;
|0x52&lt;br /&gt;
|-&lt;br /&gt;
|anglestoup&lt;br /&gt;
|0xfa&lt;br /&gt;
|0x53&lt;br /&gt;
|-&lt;br /&gt;
|anglestoright&lt;br /&gt;
|0xfb&lt;br /&gt;
|0x54&lt;br /&gt;
|-&lt;br /&gt;
|anglestoforward&lt;br /&gt;
|0xfc&lt;br /&gt;
|0x55&lt;br /&gt;
|-&lt;br /&gt;
|combineangles&lt;br /&gt;
|0xfd&lt;br /&gt;
|0x56&lt;br /&gt;
|-&lt;br /&gt;
|transformmove&lt;br /&gt;
|0xfe&lt;br /&gt;
|0x57&lt;br /&gt;
|-&lt;br /&gt;
|issubstr&lt;br /&gt;
|0xff&lt;br /&gt;
|0x58&lt;br /&gt;
|-&lt;br /&gt;
|isendstr&lt;br /&gt;
|0x100&lt;br /&gt;
|0x59&lt;br /&gt;
|-&lt;br /&gt;
|getsubstr&lt;br /&gt;
|0x101&lt;br /&gt;
|0x5a&lt;br /&gt;
|-&lt;br /&gt;
|tolower&lt;br /&gt;
|0x102&lt;br /&gt;
|0x5b&lt;br /&gt;
|-&lt;br /&gt;
|strtok&lt;br /&gt;
|0x103&lt;br /&gt;
|0x5c&lt;br /&gt;
|-&lt;br /&gt;
|stricmp&lt;br /&gt;
|0x104&lt;br /&gt;
|0x5d&lt;br /&gt;
|-&lt;br /&gt;
|ambientplay&lt;br /&gt;
|0x105&lt;br /&gt;
|0x5e&lt;br /&gt;
|-&lt;br /&gt;
|ambientstop&lt;br /&gt;
|0x125&lt;br /&gt;
|0x5f&lt;br /&gt;
|-&lt;br /&gt;
|precachemodel&lt;br /&gt;
|0x126&lt;br /&gt;
|0x60&lt;br /&gt;
|-&lt;br /&gt;
|precacheshellshock&lt;br /&gt;
|0x127&lt;br /&gt;
|0x61&lt;br /&gt;
|-&lt;br /&gt;
|precacheitem&lt;br /&gt;
|0x128&lt;br /&gt;
|0x62&lt;br /&gt;
|-&lt;br /&gt;
|precacheshader&lt;br /&gt;
|0x129&lt;br /&gt;
|0x63&lt;br /&gt;
|-&lt;br /&gt;
|precachestring&lt;br /&gt;
|0x12a&lt;br /&gt;
|0x64&lt;br /&gt;
|-&lt;br /&gt;
|precachemenu&lt;br /&gt;
|0x12b&lt;br /&gt;
|0x65&lt;br /&gt;
|-&lt;br /&gt;
|precacherumble&lt;br /&gt;
|0x12c&lt;br /&gt;
|0x66&lt;br /&gt;
|-&lt;br /&gt;
|precachelocationselector&lt;br /&gt;
|0x12d&lt;br /&gt;
|0x67&lt;br /&gt;
|-&lt;br /&gt;
|precacheleaderboards&lt;br /&gt;
|0x12e&lt;br /&gt;
|0x68&lt;br /&gt;
|-&lt;br /&gt;
|precacheheadicon&lt;br /&gt;
|0x146&lt;br /&gt;
|0xe9&lt;br /&gt;
|-&lt;br /&gt;
|loadfx&lt;br /&gt;
|0x12f&lt;br /&gt;
|0x1c5&lt;br /&gt;
|-&lt;br /&gt;
|playfx&lt;br /&gt;
|0x130&lt;br /&gt;
|0x1c6&lt;br /&gt;
|-&lt;br /&gt;
|unknown&lt;br /&gt;
|N/A&lt;br /&gt;
|0x69&lt;br /&gt;
|-&lt;br /&gt;
|playfxontag&lt;br /&gt;
|0x131&lt;br /&gt;
|0x6a&lt;br /&gt;
|-&lt;br /&gt;
|stopfxontag&lt;br /&gt;
|0x132&lt;br /&gt;
|0x6b&lt;br /&gt;
|-&lt;br /&gt;
|killfxontag&lt;br /&gt;
|N/A&lt;br /&gt;
|0x6c&lt;br /&gt;
|-&lt;br /&gt;
|playloopedfx&lt;br /&gt;
|0x133&lt;br /&gt;
|0x6d&lt;br /&gt;
|-&lt;br /&gt;
|spawnfx&lt;br /&gt;
|0x134&lt;br /&gt;
|0x6e&lt;br /&gt;
|-&lt;br /&gt;
|triggerfx&lt;br /&gt;
|0x135&lt;br /&gt;
|0x6f&lt;br /&gt;
|-&lt;br /&gt;
|playfxontagforclients&lt;br /&gt;
|0x136&lt;br /&gt;
|0x70&lt;br /&gt;
|-&lt;br /&gt;
|physicsexplosionsphere&lt;br /&gt;
|0x15a&lt;br /&gt;
|0x71&lt;br /&gt;
|-&lt;br /&gt;
|physicsexplosioncylinder&lt;br /&gt;
|0x15b&lt;br /&gt;
|0x72&lt;br /&gt;
|-&lt;br /&gt;
|physicsjolt&lt;br /&gt;
|0x15c&lt;br /&gt;
|0x73&lt;br /&gt;
|-&lt;br /&gt;
|physicsjitter&lt;br /&gt;
|0x15d&lt;br /&gt;
|0x74&lt;br /&gt;
|-&lt;br /&gt;
|setexpfog&lt;br /&gt;
|0x15e&lt;br /&gt;
|0x75&lt;br /&gt;
|-&lt;br /&gt;
|isexplosivedamagemod&lt;br /&gt;
|0x15f&lt;br /&gt;
|0x76&lt;br /&gt;
|-&lt;br /&gt;
|radiusdamage&lt;br /&gt;
|0x160&lt;br /&gt;
|0x77&lt;br /&gt;
|-&lt;br /&gt;
|setplayerignoreradiusdamage&lt;br /&gt;
|0x161&lt;br /&gt;
|0x78&lt;br /&gt;
|-&lt;br /&gt;
|glassradiusdamage&lt;br /&gt;
|0x162&lt;br /&gt;
|0x79&lt;br /&gt;
|-&lt;br /&gt;
|earthquake&lt;br /&gt;
|0x163&lt;br /&gt;
|0x7a&lt;br /&gt;
|-&lt;br /&gt;
|getnumparts&lt;br /&gt;
|0x164&lt;br /&gt;
|0x7b&lt;br /&gt;
|-&lt;br /&gt;
|getpartname&lt;br /&gt;
|0x182&lt;br /&gt;
|0x7c&lt;br /&gt;
|-&lt;br /&gt;
|weaponfiretime&lt;br /&gt;
|0x183&lt;br /&gt;
|0x7d&lt;br /&gt;
|-&lt;br /&gt;
|weaponclipsize&lt;br /&gt;
|0x184&lt;br /&gt;
|0x7e&lt;br /&gt;
|-&lt;br /&gt;
|weaponisauto&lt;br /&gt;
|0x185&lt;br /&gt;
|0x7f&lt;br /&gt;
|-&lt;br /&gt;
|weaponissemiauto&lt;br /&gt;
|0x186&lt;br /&gt;
|0x80&lt;br /&gt;
|-&lt;br /&gt;
|weaponisboltaction&lt;br /&gt;
|0x187&lt;br /&gt;
|0x81&lt;br /&gt;
|-&lt;br /&gt;
|weaponinheritsperks&lt;br /&gt;
|0x188&lt;br /&gt;
|0x82&lt;br /&gt;
|-&lt;br /&gt;
|weaponburstcount&lt;br /&gt;
|0x189&lt;br /&gt;
|0x83&lt;br /&gt;
|-&lt;br /&gt;
|weapontype&lt;br /&gt;
|0x18a&lt;br /&gt;
|0x84&lt;br /&gt;
|-&lt;br /&gt;
|weaponclass&lt;br /&gt;
|0x18b&lt;br /&gt;
|0x85&lt;br /&gt;
|-&lt;br /&gt;
|weaponinventorytype&lt;br /&gt;
|0x1b5&lt;br /&gt;
|0x86&lt;br /&gt;
|-&lt;br /&gt;
|weaponstartammo&lt;br /&gt;
|0x1b6&lt;br /&gt;
|0x87&lt;br /&gt;
|-&lt;br /&gt;
|weaponmaxammo&lt;br /&gt;
|0x1b7&lt;br /&gt;
|0x88&lt;br /&gt;
|-&lt;br /&gt;
|weaponaltweaponname&lt;br /&gt;
|0x1b8&lt;br /&gt;
|0x89&lt;br /&gt;
|-&lt;br /&gt;
|isweaponcliponly&lt;br /&gt;
|0x1b9&lt;br /&gt;
|0x8a&lt;br /&gt;
|-&lt;br /&gt;
|isweapondetonationtimed&lt;br /&gt;
|0x1ba&lt;br /&gt;
|0x8b&lt;br /&gt;
|-&lt;br /&gt;
|weaponhasthermalscope&lt;br /&gt;
|0x1bb&lt;br /&gt;
|0x8c&lt;br /&gt;
|-&lt;br /&gt;
|getvehiclenode&lt;br /&gt;
|0x1bc&lt;br /&gt;
|0x8d&lt;br /&gt;
|-&lt;br /&gt;
|getvehiclenodearray&lt;br /&gt;
|0x1bd&lt;br /&gt;
|0x8e&lt;br /&gt;
|-&lt;br /&gt;
|getallvehiclenodes&lt;br /&gt;
|0x1be&lt;br /&gt;
|0x8f&lt;br /&gt;
|-&lt;br /&gt;
|getnumvehicles&lt;br /&gt;
|0x1bf&lt;br /&gt;
|0x90&lt;br /&gt;
|-&lt;br /&gt;
|precachevehicle&lt;br /&gt;
|0x1c0&lt;br /&gt;
|0x91&lt;br /&gt;
|-&lt;br /&gt;
|spawnvehicle&lt;br /&gt;
|0x1c1&lt;br /&gt;
|0x92&lt;br /&gt;
|-&lt;br /&gt;
|getarray&lt;br /&gt;
|0x1c2&lt;br /&gt;
|0x93&lt;br /&gt;
|-&lt;br /&gt;
|getspawnerarray&lt;br /&gt;
|0x198&lt;br /&gt;
|0x94&lt;br /&gt;
|-&lt;br /&gt;
|playrumbleonposition&lt;br /&gt;
|0x199&lt;br /&gt;
|0x95&lt;br /&gt;
|-&lt;br /&gt;
|playrumblelooponposition&lt;br /&gt;
|0x19a&lt;br /&gt;
|0x96&lt;br /&gt;
|-&lt;br /&gt;
|stopallrumbles&lt;br /&gt;
|0x19b&lt;br /&gt;
|0x97&lt;br /&gt;
|-&lt;br /&gt;
|soundexists&lt;br /&gt;
|0x19c&lt;br /&gt;
|0x98&lt;br /&gt;
|-&lt;br /&gt;
|openfile&lt;br /&gt;
|0x19d&lt;br /&gt;
|0x99&lt;br /&gt;
|-&lt;br /&gt;
|closefile&lt;br /&gt;
|0x19e&lt;br /&gt;
|0x9a&lt;br /&gt;
|-&lt;br /&gt;
|fprintln&lt;br /&gt;
|0x19f&lt;br /&gt;
|0x9b&lt;br /&gt;
|-&lt;br /&gt;
|fprintfields&lt;br /&gt;
|0x1a0&lt;br /&gt;
|0x9c&lt;br /&gt;
|-&lt;br /&gt;
|freadln&lt;br /&gt;
|0x1a1&lt;br /&gt;
|0x9d&lt;br /&gt;
|-&lt;br /&gt;
|fgetarg&lt;br /&gt;
|0x1a2&lt;br /&gt;
|0x9e&lt;br /&gt;
|-&lt;br /&gt;
|setminimap&lt;br /&gt;
|0x1a3&lt;br /&gt;
|0x9f&lt;br /&gt;
|-&lt;br /&gt;
|setthermalbodymaterial&lt;br /&gt;
|0x1a4&lt;br /&gt;
|0xa0&lt;br /&gt;
|-&lt;br /&gt;
|getarraykeys&lt;br /&gt;
|0x1a5&lt;br /&gt;
|0xa1&lt;br /&gt;
|-&lt;br /&gt;
|getfirstarraykey&lt;br /&gt;
|0x1a6&lt;br /&gt;
|0xa2&lt;br /&gt;
|-&lt;br /&gt;
|getnextarraykey&lt;br /&gt;
|0x18c&lt;br /&gt;
|0xa3&lt;br /&gt;
|-&lt;br /&gt;
|sortbydistance&lt;br /&gt;
|0x18d&lt;br /&gt;
|0xa4&lt;br /&gt;
|-&lt;br /&gt;
|tablelookup&lt;br /&gt;
|0x18e&lt;br /&gt;
|0xa5&lt;br /&gt;
|-&lt;br /&gt;
|tablelookupbyrow&lt;br /&gt;
|0x18f&lt;br /&gt;
|0xa6&lt;br /&gt;
|-&lt;br /&gt;
|tablelookupistring&lt;br /&gt;
|0x190&lt;br /&gt;
|0xa7&lt;br /&gt;
|-&lt;br /&gt;
|tablelookupistringbyrow&lt;br /&gt;
|0x191&lt;br /&gt;
|0xa8&lt;br /&gt;
|-&lt;br /&gt;
|tablelookuprownum&lt;br /&gt;
|0x192&lt;br /&gt;
|0xa9&lt;br /&gt;
|-&lt;br /&gt;
|getmissileowner&lt;br /&gt;
|0x193&lt;br /&gt;
|0xaa&lt;br /&gt;
|-&lt;br /&gt;
|magicbullet&lt;br /&gt;
|0x194&lt;br /&gt;
|0xab&lt;br /&gt;
|-&lt;br /&gt;
|getweaponflashtagname&lt;br /&gt;
|0x195&lt;br /&gt;
|0xac&lt;br /&gt;
|-&lt;br /&gt;
|averagepoint&lt;br /&gt;
|0x196&lt;br /&gt;
|0xad&lt;br /&gt;
|-&lt;br /&gt;
|averagenormal&lt;br /&gt;
|0x197&lt;br /&gt;
|0xae&lt;br /&gt;
|-&lt;br /&gt;
|getglass&lt;br /&gt;
|0x1a7&lt;br /&gt;
|0xaf&lt;br /&gt;
|-&lt;br /&gt;
|getglassarray&lt;br /&gt;
|0x1a8&lt;br /&gt;
|0xb0&lt;br /&gt;
|-&lt;br /&gt;
|getglassorigin&lt;br /&gt;
|0x1a9&lt;br /&gt;
|0xb1&lt;br /&gt;
|-&lt;br /&gt;
|isglassdestroyed&lt;br /&gt;
|0x1aa&lt;br /&gt;
|0xb2&lt;br /&gt;
|-&lt;br /&gt;
|destroyglass&lt;br /&gt;
|0x1ab&lt;br /&gt;
|0xb3&lt;br /&gt;
|-&lt;br /&gt;
|deleteglass&lt;br /&gt;
|0x1ac&lt;br /&gt;
|0xb4&lt;br /&gt;
|-&lt;br /&gt;
|getentchannelscount&lt;br /&gt;
|0x1ad&lt;br /&gt;
|0xb5&lt;br /&gt;
|-&lt;br /&gt;
|getentchannelname&lt;br /&gt;
|N/A&lt;br /&gt;
|0xb6&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- objective functions --&amp;gt;&lt;br /&gt;
|objective_add&lt;br /&gt;
|0x1af&lt;br /&gt;
|0xb7&lt;br /&gt;
|-&lt;br /&gt;
|objective_delete&lt;br /&gt;
|0x1b0&lt;br /&gt;
|0xb8&lt;br /&gt;
|-&lt;br /&gt;
|objective_state&lt;br /&gt;
|0x1b1&lt;br /&gt;
|0xb9&lt;br /&gt;
|-&lt;br /&gt;
|objective_icon&lt;br /&gt;
|0x1b2&lt;br /&gt;
|0xba&lt;br /&gt;
|-&lt;br /&gt;
|objective_position&lt;br /&gt;
|0x1b3&lt;br /&gt;
|0xbb&lt;br /&gt;
|-&lt;br /&gt;
|objective_current&lt;br /&gt;
|0x1b4&lt;br /&gt;
|0xbc&lt;br /&gt;
|-&lt;br /&gt;
|objective_onentity&lt;br /&gt;
|0x165&lt;br /&gt;
|0xbd&lt;br /&gt;
|-&lt;br /&gt;
|objective_team&lt;br /&gt;
|0x166&lt;br /&gt;
|0xbe&lt;br /&gt;
|-&lt;br /&gt;
|objective_player&lt;br /&gt;
|0x167&lt;br /&gt;
|0xbf&lt;br /&gt;
|-&lt;br /&gt;
|objective_playerteam&lt;br /&gt;
|0x168&lt;br /&gt;
|0xc0&lt;br /&gt;
|-&lt;br /&gt;
|objective_playerenemyteam&lt;br /&gt;
|0x169&lt;br /&gt;
|0xc1&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- function list 2 --&amp;gt;&lt;br /&gt;
|iprintln&lt;br /&gt;
|0x16a&lt;br /&gt;
|0xc2&lt;br /&gt;
|-&lt;br /&gt;
|iprintlnbold&lt;br /&gt;
|0x16b&lt;br /&gt;
|0xc3&lt;br /&gt;
|-&lt;br /&gt;
|logstring&lt;br /&gt;
|0x16c&lt;br /&gt;
|0xc4&lt;br /&gt;
|-&lt;br /&gt;
|getent&lt;br /&gt;
|0x16d&lt;br /&gt;
|0xc5&lt;br /&gt;
|-&lt;br /&gt;
|getentarray&lt;br /&gt;
|0x16e&lt;br /&gt;
|0xc6&lt;br /&gt;
|-&lt;br /&gt;
|spawnplane&lt;br /&gt;
|0x16f&lt;br /&gt;
|0xc7&lt;br /&gt;
|-&lt;br /&gt;
|spawnstruct&lt;br /&gt;
|0x170&lt;br /&gt;
|0xc8&lt;br /&gt;
|-&lt;br /&gt;
|spawnhelicopter&lt;br /&gt;
|0x171&lt;br /&gt;
|0xc9&lt;br /&gt;
|-&lt;br /&gt;
|isalive&lt;br /&gt;
|0x172&lt;br /&gt;
|0xca&lt;br /&gt;
|-&lt;br /&gt;
|isspawner&lt;br /&gt;
|0x173&lt;br /&gt;
|0xcb&lt;br /&gt;
|-&lt;br /&gt;
|createattractorent&lt;br /&gt;
|0x174&lt;br /&gt;
|0xcc&lt;br /&gt;
|-&lt;br /&gt;
|createattractororigin&lt;br /&gt;
|0x175&lt;br /&gt;
|0xcd&lt;br /&gt;
|-&lt;br /&gt;
|createrepulsorent&lt;br /&gt;
|0x176&lt;br /&gt;
|0xce&lt;br /&gt;
|-&lt;br /&gt;
|createrepulsororigin&lt;br /&gt;
|0x177&lt;br /&gt;
|0xcf&lt;br /&gt;
|-&lt;br /&gt;
|deleteattractor&lt;br /&gt;
|0x178&lt;br /&gt;
|0xd0&lt;br /&gt;
|-&lt;br /&gt;
|playsoundatpos&lt;br /&gt;
|0x179&lt;br /&gt;
|0xd1&lt;br /&gt;
|-&lt;br /&gt;
|newhudelem&lt;br /&gt;
|0x17a&lt;br /&gt;
|0x1c7&lt;br /&gt;
|-&lt;br /&gt;
|newclienthudelem&lt;br /&gt;
|0x17b&lt;br /&gt;
|0xd2&lt;br /&gt;
|-&lt;br /&gt;
|newteamhudelem&lt;br /&gt;
|0x17c&lt;br /&gt;
|0xd3&lt;br /&gt;
|-&lt;br /&gt;
|newdamageindicatorhudelem&lt;br /&gt;
|N/A&lt;br /&gt;
|0xd4&lt;br /&gt;
|-&lt;br /&gt;
|resettimeout&lt;br /&gt;
|0x17d&lt;br /&gt;
|0xd5&lt;br /&gt;
|-&lt;br /&gt;
|precachefxteamthermal&lt;br /&gt;
|0x17e&lt;br /&gt;
|0xd6&lt;br /&gt;
|-&lt;br /&gt;
|isplayer&lt;br /&gt;
|0x17f&lt;br /&gt;
|0xd7&lt;br /&gt;
|-&lt;br /&gt;
|isplayernumber&lt;br /&gt;
|0x180&lt;br /&gt;
|0xd8&lt;br /&gt;
|-&lt;br /&gt;
|setsunlight&lt;br /&gt;
|0x39&lt;br /&gt;
|0x191&lt;br /&gt;
|-&lt;br /&gt;
|resetsunlight&lt;br /&gt;
|0x3a&lt;br /&gt;
|0x192&lt;br /&gt;
|-&lt;br /&gt;
|setwinningplayer&lt;br /&gt;
|0x181&lt;br /&gt;
|0xd9&lt;br /&gt;
|-&lt;br /&gt;
|setwinningteam&lt;br /&gt;
|0x137&lt;br /&gt;
|0xda&lt;br /&gt;
|-&lt;br /&gt;
|announcement&lt;br /&gt;
|0x138&lt;br /&gt;
|0xdb&lt;br /&gt;
|-&lt;br /&gt;
|clientannouncement&lt;br /&gt;
|0x139&lt;br /&gt;
|0xdc&lt;br /&gt;
|-&lt;br /&gt;
|getteamscore&lt;br /&gt;
|0x13a&lt;br /&gt;
|0xdd&lt;br /&gt;
|-&lt;br /&gt;
|setteamscore&lt;br /&gt;
|0x13b&lt;br /&gt;
|0xde&lt;br /&gt;
|-&lt;br /&gt;
|setclientnamemode&lt;br /&gt;
|0x13c&lt;br /&gt;
|0xdf&lt;br /&gt;
|-&lt;br /&gt;
|updateclientnames&lt;br /&gt;
|0x13d&lt;br /&gt;
|0xe0&lt;br /&gt;
|-&lt;br /&gt;
|getteamplayersalive&lt;br /&gt;
|0x13e&lt;br /&gt;
|0xe1&lt;br /&gt;
|-&lt;br /&gt;
|logprint&lt;br /&gt;
|0x13f&lt;br /&gt;
|0xe2&lt;br /&gt;
|-&lt;br /&gt;
|worldentnumber&lt;br /&gt;
|0x140&lt;br /&gt;
|0xe3&lt;br /&gt;
|-&lt;br /&gt;
|obituary&lt;br /&gt;
|0x141&lt;br /&gt;
|0xe4&lt;br /&gt;
|-&lt;br /&gt;
|positionwouldtelefrag&lt;br /&gt;
|0x142&lt;br /&gt;
|0xe5&lt;br /&gt;
|-&lt;br /&gt;
|canspawn&lt;br /&gt;
|0x143&lt;br /&gt;
|0xe6&lt;br /&gt;
|-&lt;br /&gt;
|getstarttime&lt;br /&gt;
|0x144&lt;br /&gt;
|0xe7&lt;br /&gt;
|-&lt;br /&gt;
|precachestatusicon&lt;br /&gt;
|0x145&lt;br /&gt;
|0xe8&lt;br /&gt;
|-&lt;br /&gt;
|precacheminimapicon&lt;br /&gt;
|0x147&lt;br /&gt;
|0xea&lt;br /&gt;
|-&lt;br /&gt;
|precachempanim&lt;br /&gt;
|0x148&lt;br /&gt;
|0xeb&lt;br /&gt;
|-&lt;br /&gt;
|restart&lt;br /&gt;
|0x149&lt;br /&gt;
|0xec&lt;br /&gt;
|-&lt;br /&gt;
|exitlevel&lt;br /&gt;
|0x14a&lt;br /&gt;
|0xed&lt;br /&gt;
|-&lt;br /&gt;
|addtestclient&lt;br /&gt;
|0x14b&lt;br /&gt;
|0xee&lt;br /&gt;
|-&lt;br /&gt;
|makedvarserverinfo&lt;br /&gt;
|0x14c&lt;br /&gt;
|0xef&lt;br /&gt;
|-&lt;br /&gt;
|setarchive&lt;br /&gt;
|0x14d&lt;br /&gt;
|0xf0&lt;br /&gt;
|-&lt;br /&gt;
|allclientsprint&lt;br /&gt;
|0x14e&lt;br /&gt;
|0xf1&lt;br /&gt;
|-&lt;br /&gt;
|clientprint&lt;br /&gt;
|0x14f&lt;br /&gt;
|0xf2&lt;br /&gt;
|-&lt;br /&gt;
|mapexists&lt;br /&gt;
|0x150&lt;br /&gt;
|0xf3&lt;br /&gt;
|-&lt;br /&gt;
|isvalidgametype&lt;br /&gt;
|0x151&lt;br /&gt;
|0xf4&lt;br /&gt;
|-&lt;br /&gt;
|matchend&lt;br /&gt;
|0x152&lt;br /&gt;
|0xf5&lt;br /&gt;
|-&lt;br /&gt;
|setplayerteamrank&lt;br /&gt;
|0x153&lt;br /&gt;
|0xf6&lt;br /&gt;
|-&lt;br /&gt;
|endparty&lt;br /&gt;
|0x154&lt;br /&gt;
|0xf7&lt;br /&gt;
|-&lt;br /&gt;
|setteamradar&lt;br /&gt;
|0x155&lt;br /&gt;
|0xf8&lt;br /&gt;
|-&lt;br /&gt;
|getteamradar&lt;br /&gt;
|0x156&lt;br /&gt;
|0xf9&lt;br /&gt;
|-&lt;br /&gt;
|setteamradarstrength&lt;br /&gt;
|0x157&lt;br /&gt;
|0xfa&lt;br /&gt;
|-&lt;br /&gt;
|getteamradarstrength&lt;br /&gt;
|0x158&lt;br /&gt;
|0xfb&lt;br /&gt;
|-&lt;br /&gt;
|getuavstrengthmin&lt;br /&gt;
|0x159&lt;br /&gt;
|0xfc&lt;br /&gt;
|-&lt;br /&gt;
|getuavstrengthmax&lt;br /&gt;
|0x106&lt;br /&gt;
|0xfd&lt;br /&gt;
|-&lt;br /&gt;
|getuavstrengthlevelneutral&lt;br /&gt;
|0x107&lt;br /&gt;
|0xfe&lt;br /&gt;
|-&lt;br /&gt;
|getuavstrengthlevelshowenemyfastsweep&lt;br /&gt;
|0x108&lt;br /&gt;
|0xff&lt;br /&gt;
|-&lt;br /&gt;
|getuavstrengthlevelshowenemydirectional&lt;br /&gt;
|0x109&lt;br /&gt;
|0x100&lt;br /&gt;
|-&lt;br /&gt;
|blockteamradar&lt;br /&gt;
|0x10a&lt;br /&gt;
|0x101&lt;br /&gt;
|-&lt;br /&gt;
|unblockteamradar&lt;br /&gt;
|0x10b&lt;br /&gt;
|0x102&lt;br /&gt;
|-&lt;br /&gt;
|isteamradarblocked&lt;br /&gt;
|0x10c&lt;br /&gt;
|0x103&lt;br /&gt;
|-&lt;br /&gt;
|getassignedteam&lt;br /&gt;
|0x10d&lt;br /&gt;
|0x104&lt;br /&gt;
|-&lt;br /&gt;
|setmatchdata&lt;br /&gt;
|0x10e&lt;br /&gt;
|0x105&lt;br /&gt;
|-&lt;br /&gt;
|getmatchdata&lt;br /&gt;
|0x10f&lt;br /&gt;
|0x106&lt;br /&gt;
|-&lt;br /&gt;
|sendmatchdata&lt;br /&gt;
|0x110&lt;br /&gt;
|0x107&lt;br /&gt;
|-&lt;br /&gt;
|clearmatchdata&lt;br /&gt;
|0x111&lt;br /&gt;
|0x108&lt;br /&gt;
|-&lt;br /&gt;
|setmatchdatadef&lt;br /&gt;
|0x112&lt;br /&gt;
|0x109&lt;br /&gt;
|-&lt;br /&gt;
|setmatchclientip&lt;br /&gt;
|0x113&lt;br /&gt;
|0x10a&lt;br /&gt;
|-&lt;br /&gt;
|setmatchdataid&lt;br /&gt;
|0x114&lt;br /&gt;
|0x10b&lt;br /&gt;
|-&lt;br /&gt;
|setclientmatchdata&lt;br /&gt;
|0x115&lt;br /&gt;
|0x10c&lt;br /&gt;
|-&lt;br /&gt;
|getclientmatchdata&lt;br /&gt;
|0x116&lt;br /&gt;
|0x10d&lt;br /&gt;
|-&lt;br /&gt;
|setclientmatchdatadef&lt;br /&gt;
|0x117&lt;br /&gt;
|0x10e&lt;br /&gt;
|-&lt;br /&gt;
|sendclientmatchdata&lt;br /&gt;
|0x118&lt;br /&gt;
|0x10f&lt;br /&gt;
|-&lt;br /&gt;
|getbuildversion&lt;br /&gt;
|0x119&lt;br /&gt;
|0x110&lt;br /&gt;
|-&lt;br /&gt;
|getbuildnumber&lt;br /&gt;
|0x11a&lt;br /&gt;
|0x111&lt;br /&gt;
|-&lt;br /&gt;
|getsystemtime&lt;br /&gt;
|0x11b&lt;br /&gt;
|0x112&lt;br /&gt;
|-&lt;br /&gt;
|getmatchrulesdata&lt;br /&gt;
|0x11c&lt;br /&gt;
|0x113&lt;br /&gt;
|-&lt;br /&gt;
|isusingmatchrulesdata&lt;br /&gt;
|0x11d&lt;br /&gt;
|0x114&lt;br /&gt;
|-&lt;br /&gt;
|kick&lt;br /&gt;
|0x11e&lt;br /&gt;
|0x115&lt;br /&gt;
|-&lt;br /&gt;
|issplitscreen&lt;br /&gt;
|0x11f&lt;br /&gt;
|0x116&lt;br /&gt;
|-&lt;br /&gt;
|setmapcenter&lt;br /&gt;
|0x120&lt;br /&gt;
|0x117&lt;br /&gt;
|-&lt;br /&gt;
|setgameendtime&lt;br /&gt;
|0x121&lt;br /&gt;
|0x118&lt;br /&gt;
|-&lt;br /&gt;
|visionsetnaked&lt;br /&gt;
|0x122&lt;br /&gt;
|0x119&lt;br /&gt;
|-&lt;br /&gt;
|visionsetnight&lt;br /&gt;
|0x123&lt;br /&gt;
|0x11a&lt;br /&gt;
|-&lt;br /&gt;
|visionsetmissilecam&lt;br /&gt;
|0x124&lt;br /&gt;
|0x11b&lt;br /&gt;
|-&lt;br /&gt;
|visionsetthermal&lt;br /&gt;
|0xd9&lt;br /&gt;
|0x11c&lt;br /&gt;
|-&lt;br /&gt;
|visionsetpain&lt;br /&gt;
|0xda&lt;br /&gt;
|0x11d&lt;br /&gt;
|-&lt;br /&gt;
|endlobby&lt;br /&gt;
|0xdb&lt;br /&gt;
|0x11e&lt;br /&gt;
|-&lt;br /&gt;
|ambience&lt;br /&gt;
|0xdc&lt;br /&gt;
|0x11f&lt;br /&gt;
|-&lt;br /&gt;
|getmapcustom&lt;br /&gt;
|0xdd&lt;br /&gt;
|0x120&lt;br /&gt;
|-&lt;br /&gt;
|updateskill&lt;br /&gt;
|0xde&lt;br /&gt;
|0x121&lt;br /&gt;
|-&lt;br /&gt;
|spawnsighttrace&lt;br /&gt;
|0xdf&lt;br /&gt;
|0x122&lt;br /&gt;
|-&lt;br /&gt;
|incrementcounter&lt;br /&gt;
|N/A&lt;br /&gt;
|0x123&lt;br /&gt;
|-&lt;br /&gt;
|getcountertotal&lt;br /&gt;
|N/A&lt;br /&gt;
|0x124&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== OP_CallBuiltinMethod ===&lt;br /&gt;
These opcodes are used to make calls to native methods built into the game&#039;s executable. Unlike functions, the methods must pass an object. For OP_CallBuiltinMethod0 - OP_CallBuiltinMethod5, the number it ends with is the number of parameters to be passed to the function. For OP_CallBuiltinMethod, the number of parameters is loaded after the opcode as an 8 bit integer. The method id is then loaded as a 16 bit integer. That value is then used as an index in the method table below.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; class=&amp;quot;article-table mw-collapsible mw-collapsed wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!rowspan=&amp;quot;2&amp;quot;|Method&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|MW3&lt;br /&gt;
|-&lt;br /&gt;
!PC ID&lt;br /&gt;
!PS3/XBOX ID&lt;br /&gt;
&amp;lt;!-- builtin --&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|attach&lt;br /&gt;
|0x8017&lt;br /&gt;
|0x8000&lt;br /&gt;
|-&lt;br /&gt;
|attachshieldmodel&lt;br /&gt;
|0x8018&lt;br /&gt;
|0x8001&lt;br /&gt;
|-&lt;br /&gt;
|detach&lt;br /&gt;
|0x8024&lt;br /&gt;
|0x8002&lt;br /&gt;
|-&lt;br /&gt;
|detachshieldmodel&lt;br /&gt;
|0x8025&lt;br /&gt;
|0x8003&lt;br /&gt;
|-&lt;br /&gt;
|moveshieldmodel&lt;br /&gt;
|0x8026&lt;br /&gt;
|0x8004&lt;br /&gt;
|-&lt;br /&gt;
|detachall&lt;br /&gt;
|0x8027&lt;br /&gt;
|0x8005&lt;br /&gt;
|-&lt;br /&gt;
|getattachsize&lt;br /&gt;
|0x8028&lt;br /&gt;
|0x8006&lt;br /&gt;
|-&lt;br /&gt;
|getattachmodelname&lt;br /&gt;
|0x8029&lt;br /&gt;
|0x8007&lt;br /&gt;
|-&lt;br /&gt;
|getattachtagname&lt;br /&gt;
|0x802a&lt;br /&gt;
|0x8008&lt;br /&gt;
|-&lt;br /&gt;
|getattachignorecollision&lt;br /&gt;
|0x8043&lt;br /&gt;
|0x8009&lt;br /&gt;
|-&lt;br /&gt;
|hidepart&lt;br /&gt;
|0x8044&lt;br /&gt;
|0x800a&lt;br /&gt;
|-&lt;br /&gt;
|allinstances&lt;br /&gt;
|0x8045&lt;br /&gt;
|0x800b&lt;br /&gt;
|-&lt;br /&gt;
|hideallparts&lt;br /&gt;
|0x8046&lt;br /&gt;
|0x800c&lt;br /&gt;
|-&lt;br /&gt;
|showpart&lt;br /&gt;
|0x8047&lt;br /&gt;
|0x800d&lt;br /&gt;
|-&lt;br /&gt;
|showallparts&lt;br /&gt;
|0x8048&lt;br /&gt;
|0x800e&lt;br /&gt;
|-&lt;br /&gt;
|linkto&lt;br /&gt;
|0x8049&lt;br /&gt;
|0x800f&lt;br /&gt;
|-&lt;br /&gt;
|linktoblendtotag&lt;br /&gt;
|0x804a&lt;br /&gt;
|0x8010&lt;br /&gt;
|-&lt;br /&gt;
|unlink&lt;br /&gt;
|0x804b&lt;br /&gt;
|0x8011&lt;br /&gt;
|-&lt;br /&gt;
|islinked&lt;br /&gt;
|0x8063&lt;br /&gt;
|0x8012&lt;br /&gt;
|-&lt;br /&gt;
|enablelinkto&lt;br /&gt;
|0x8064&lt;br /&gt;
|0x8013&lt;br /&gt;
|-&lt;br /&gt;
|playerlinkto&lt;br /&gt;
|0x8075&lt;br /&gt;
|0x8014&lt;br /&gt;
|-&lt;br /&gt;
|playerlinktodelta&lt;br /&gt;
|0x8076&lt;br /&gt;
|0x8015&lt;br /&gt;
|-&lt;br /&gt;
|playerlinkweaponviewtodelta&lt;br /&gt;
|0x8077&lt;br /&gt;
|0x8016&lt;br /&gt;
|-&lt;br /&gt;
|playerlinktoabsolute&lt;br /&gt;
|0x8078&lt;br /&gt;
|0x8017&lt;br /&gt;
|-&lt;br /&gt;
|playerlinktoblend&lt;br /&gt;
|0x8079&lt;br /&gt;
|0x8018&lt;br /&gt;
|-&lt;br /&gt;
|playerlinkedoffsetenable&lt;br /&gt;
|0x807a&lt;br /&gt;
|0x8019&lt;br /&gt;
|-&lt;br /&gt;
|playerlinkedoffsetdisable&lt;br /&gt;
|0x8094&lt;br /&gt;
|0x801a&lt;br /&gt;
|-&lt;br /&gt;
|playerlinkedsetviewznear&lt;br /&gt;
|0x8095&lt;br /&gt;
|0x801b&lt;br /&gt;
|-&lt;br /&gt;
|playerlinkedsetusebaseangleforviewclamp&lt;br /&gt;
|0x8096&lt;br /&gt;
|0x801c&lt;br /&gt;
|-&lt;br /&gt;
|lerpviewangleclamp&lt;br /&gt;
|0x8097&lt;br /&gt;
|0x801d&lt;br /&gt;
|-&lt;br /&gt;
|setviewangleresistance&lt;br /&gt;
|0x8098&lt;br /&gt;
|0x801e&lt;br /&gt;
|-&lt;br /&gt;
|geteye&lt;br /&gt;
|0x8099&lt;br /&gt;
|0x801f&lt;br /&gt;
|-&lt;br /&gt;
|istouching&lt;br /&gt;
|0x809a&lt;br /&gt;
|0x8020&lt;br /&gt;
|-&lt;br /&gt;
|stoploopsound&lt;br /&gt;
|0x809b&lt;br /&gt;
|0x8021&lt;br /&gt;
|-&lt;br /&gt;
|stopsounds&lt;br /&gt;
|0x809c&lt;br /&gt;
|0x8022&lt;br /&gt;
|-&lt;br /&gt;
|playrumbleonentity&lt;br /&gt;
|0x809d&lt;br /&gt;
|0x8023&lt;br /&gt;
|-&lt;br /&gt;
|playrumblelooponentity&lt;br /&gt;
|0x809e&lt;br /&gt;
|0x8024&lt;br /&gt;
|-&lt;br /&gt;
|stoprumble&lt;br /&gt;
|0x809f&lt;br /&gt;
|0x8025&lt;br /&gt;
|-&lt;br /&gt;
|delete&lt;br /&gt;
|0x80a0&lt;br /&gt;
|0x8026&lt;br /&gt;
|-&lt;br /&gt;
|setmodel&lt;br /&gt;
|0x80a1&lt;br /&gt;
|0x8027&lt;br /&gt;
|-&lt;br /&gt;
|laseron&lt;br /&gt;
|0x80a2&lt;br /&gt;
|0x8028&lt;br /&gt;
|-&lt;br /&gt;
|laseroff&lt;br /&gt;
|0x80a3&lt;br /&gt;
|0x8029&lt;br /&gt;
|-&lt;br /&gt;
|laseraltviewon&lt;br /&gt;
|0x80a4&lt;br /&gt;
|0x802a&lt;br /&gt;
|-&lt;br /&gt;
|laseraltviewoff&lt;br /&gt;
|0x80a5&lt;br /&gt;
|0x802b&lt;br /&gt;
|-&lt;br /&gt;
|thermalvisionon&lt;br /&gt;
|0x80a6&lt;br /&gt;
|0x802c&lt;br /&gt;
|-&lt;br /&gt;
|thermalvisionoff&lt;br /&gt;
|0x80a7&lt;br /&gt;
|0x802d&lt;br /&gt;
|-&lt;br /&gt;
|thermaldrawenable&lt;br /&gt;
|0x8023&lt;br /&gt;
|0x82ef&lt;br /&gt;
|-&lt;br /&gt;
|thermaldrawdisable&lt;br /&gt;
|0x8000&lt;br /&gt;
|0x82f0&lt;br /&gt;
|-&lt;br /&gt;
|thermalvisionfofoverlayon&lt;br /&gt;
|0x80a8&lt;br /&gt;
|0x802e&lt;br /&gt;
|-&lt;br /&gt;
|thermalvisionfofoverlayoff&lt;br /&gt;
|0x80a9&lt;br /&gt;
|0x802f&lt;br /&gt;
|-&lt;br /&gt;
|autospotoverlayon&lt;br /&gt;
|0x80aa&lt;br /&gt;
|0x8030&lt;br /&gt;
|-&lt;br /&gt;
|autospotoverlayoff&lt;br /&gt;
|0x80ab&lt;br /&gt;
|0x8031&lt;br /&gt;
|-&lt;br /&gt;
|setcontents&lt;br /&gt;
|0x80ac&lt;br /&gt;
|0x8032&lt;br /&gt;
|-&lt;br /&gt;
|makeusable&lt;br /&gt;
|0x80ad&lt;br /&gt;
|0x8033&lt;br /&gt;
|-&lt;br /&gt;
|makeunusable&lt;br /&gt;
|0x80ae&lt;br /&gt;
|0x8034&lt;br /&gt;
|-&lt;br /&gt;
|setcursorhint&lt;br /&gt;
|0x80c6&lt;br /&gt;
|0x8035&lt;br /&gt;
|-&lt;br /&gt;
|sethintstring&lt;br /&gt;
|0x80c7&lt;br /&gt;
|0x8036&lt;br /&gt;
|-&lt;br /&gt;
|forceusehinton&lt;br /&gt;
|0x80c8&lt;br /&gt;
|0x8037&lt;br /&gt;
|-&lt;br /&gt;
|forceusehintoff&lt;br /&gt;
|0x80c9&lt;br /&gt;
|0x8038&lt;br /&gt;
|-&lt;br /&gt;
|makesoft&lt;br /&gt;
|0x80ca&lt;br /&gt;
|0x8039&lt;br /&gt;
|-&lt;br /&gt;
|makehard&lt;br /&gt;
|0x80cb&lt;br /&gt;
|0x803a&lt;br /&gt;
|-&lt;br /&gt;
|willneverchange&lt;br /&gt;
|0x80cc&lt;br /&gt;
|0x803b&lt;br /&gt;
|-&lt;br /&gt;
|startfiring&lt;br /&gt;
|0x80cd&lt;br /&gt;
|0x803c&lt;br /&gt;
|-&lt;br /&gt;
|stopfiring&lt;br /&gt;
|0x80ce&lt;br /&gt;
|0x803d&lt;br /&gt;
|-&lt;br /&gt;
|isfiringturret&lt;br /&gt;
|0x80cf&lt;br /&gt;
|0x803e&lt;br /&gt;
|-&lt;br /&gt;
|startbarrelspin&lt;br /&gt;
|0x80d0&lt;br /&gt;
|0x803f&lt;br /&gt;
|-&lt;br /&gt;
|stopbarrelspin&lt;br /&gt;
|0x80d1&lt;br /&gt;
|0x8040&lt;br /&gt;
|-&lt;br /&gt;
|getbarrelspinrate&lt;br /&gt;
|0x80d2&lt;br /&gt;
|0x8041&lt;br /&gt;
|-&lt;br /&gt;
|remotecontrolturret&lt;br /&gt;
|0x80d3&lt;br /&gt;
|0x8042&lt;br /&gt;
|-&lt;br /&gt;
|remotecontrolturretoff&lt;br /&gt;
|0x80d4&lt;br /&gt;
|0x8043&lt;br /&gt;
|-&lt;br /&gt;
|shootturret&lt;br /&gt;
|0x80d5&lt;br /&gt;
|0x8044&lt;br /&gt;
|-&lt;br /&gt;
|getturretowner&lt;br /&gt;
|0x80d6&lt;br /&gt;
|0x8045&lt;br /&gt;
|-&lt;br /&gt;
|setsentryowner&lt;br /&gt;
|0x80ee&lt;br /&gt;
|0x8046&lt;br /&gt;
|-&lt;br /&gt;
|setsentrycarrier&lt;br /&gt;
|0x80ef&lt;br /&gt;
|0x8047&lt;br /&gt;
|-&lt;br /&gt;
|setturretminimapvisible&lt;br /&gt;
|0x80f0&lt;br /&gt;
|0x8048&lt;br /&gt;
|-&lt;br /&gt;
|settargetentity&lt;br /&gt;
|0x80f1&lt;br /&gt;
|0x8049&lt;br /&gt;
|-&lt;br /&gt;
|snaptotargetentity&lt;br /&gt;
|0x80f2&lt;br /&gt;
|0x804a&lt;br /&gt;
|-&lt;br /&gt;
|cleartargetentity&lt;br /&gt;
|0x80f3&lt;br /&gt;
|0x804b&lt;br /&gt;
|-&lt;br /&gt;
|getturrettarget&lt;br /&gt;
|0x80f4&lt;br /&gt;
|0x804c&lt;br /&gt;
|-&lt;br /&gt;
|setplayerspread&lt;br /&gt;
|0x80f5&lt;br /&gt;
|0x804d&lt;br /&gt;
|-&lt;br /&gt;
|setaispread&lt;br /&gt;
|0x80f6&lt;br /&gt;
|0x804e&lt;br /&gt;
|-&lt;br /&gt;
|setsuppressiontime&lt;br /&gt;
|0x80f7&lt;br /&gt;
|0x804f&lt;br /&gt;
|-&lt;br /&gt;
|setconvergencetime&lt;br /&gt;
|0x8119&lt;br /&gt;
|0x8050&lt;br /&gt;
|-&lt;br /&gt;
|setconvergenceheightpercent&lt;br /&gt;
|0x811a&lt;br /&gt;
|0x8051&lt;br /&gt;
|-&lt;br /&gt;
|setturretteam&lt;br /&gt;
|0x811b&lt;br /&gt;
|0x8052&lt;br /&gt;
|-&lt;br /&gt;
|maketurretsolid&lt;br /&gt;
|0x811c&lt;br /&gt;
|0x8053&lt;br /&gt;
|-&lt;br /&gt;
|maketurretoperable&lt;br /&gt;
|0x811d&lt;br /&gt;
|0x8054&lt;br /&gt;
|-&lt;br /&gt;
|maketurretinoperable&lt;br /&gt;
|0x811e&lt;br /&gt;
|0x8055&lt;br /&gt;
|-&lt;br /&gt;
|setturretaccuracy&lt;br /&gt;
|0x813a&lt;br /&gt;
|0x8056&lt;br /&gt;
|-&lt;br /&gt;
|setrightarc&lt;br /&gt;
|0x813b&lt;br /&gt;
|0x8057&lt;br /&gt;
|-&lt;br /&gt;
|setleftarc&lt;br /&gt;
|0x813c&lt;br /&gt;
|0x8058&lt;br /&gt;
|-&lt;br /&gt;
|settoparc&lt;br /&gt;
|0x813d&lt;br /&gt;
|0x8059&lt;br /&gt;
|-&lt;br /&gt;
|setbottomarc&lt;br /&gt;
|0x813e&lt;br /&gt;
|0x805a&lt;br /&gt;
|-&lt;br /&gt;
|setautorotationdelay&lt;br /&gt;
|0x813f&lt;br /&gt;
|0x805b&lt;br /&gt;
|-&lt;br /&gt;
|setdefaultdroppitch&lt;br /&gt;
|0x8140&lt;br /&gt;
|0x805c&lt;br /&gt;
|-&lt;br /&gt;
|restoredefaultdroppitch&lt;br /&gt;
|0x8141&lt;br /&gt;
|0x805d&lt;br /&gt;
|-&lt;br /&gt;
|turretfiredisable&lt;br /&gt;
|0x8142&lt;br /&gt;
|0x805e&lt;br /&gt;
|-&lt;br /&gt;
|turretfireenable&lt;br /&gt;
|0x8161&lt;br /&gt;
|0x805f&lt;br /&gt;
|-&lt;br /&gt;
|setturretmodechangewait&lt;br /&gt;
|0x8162&lt;br /&gt;
|0x8060&lt;br /&gt;
|-&lt;br /&gt;
|usetriggerrequirelookat&lt;br /&gt;
|0x8163&lt;br /&gt;
|0x8061&lt;br /&gt;
|-&lt;br /&gt;
|getstance&lt;br /&gt;
|0x8164&lt;br /&gt;
|0x8062&lt;br /&gt;
|-&lt;br /&gt;
|setstance&lt;br /&gt;
|0x8165&lt;br /&gt;
|0x8063&lt;br /&gt;
|-&lt;br /&gt;
|itemweaponsetammo&lt;br /&gt;
|0x8166&lt;br /&gt;
|0x8064&lt;br /&gt;
|-&lt;br /&gt;
|getammocount&lt;br /&gt;
|0x8167&lt;br /&gt;
|0x8065&lt;br /&gt;
|-&lt;br /&gt;
|gettagorigin&lt;br /&gt;
|0x8168&lt;br /&gt;
|0x8066&lt;br /&gt;
|-&lt;br /&gt;
|gettagangles&lt;br /&gt;
|0x8169&lt;br /&gt;
|0x8067&lt;br /&gt;
|-&lt;br /&gt;
|shellshock&lt;br /&gt;
|0x816a&lt;br /&gt;
|0x8068&lt;br /&gt;
|-&lt;br /&gt;
|stunplayer&lt;br /&gt;
|0x816b&lt;br /&gt;
|0x8069&lt;br /&gt;
|-&lt;br /&gt;
|stopshellshock&lt;br /&gt;
|0x816c&lt;br /&gt;
|0x806a&lt;br /&gt;
|-&lt;br /&gt;
|fadeoutshellshock&lt;br /&gt;
|0x816d&lt;br /&gt;
|0x806b&lt;br /&gt;
|-&lt;br /&gt;
|setdepthoffield&lt;br /&gt;
|0x816e&lt;br /&gt;
|0x806c&lt;br /&gt;
|-&lt;br /&gt;
|setviewmodeldepthoffield&lt;br /&gt;
|0x816f&lt;br /&gt;
|0x806d&lt;br /&gt;
|-&lt;br /&gt;
|setmotionblurmovescale&lt;br /&gt;
|0x8170&lt;br /&gt;
|0x806e&lt;br /&gt;
|-&lt;br /&gt;
|setmotionblurturnscale&lt;br /&gt;
|0x8190&lt;br /&gt;
|0x806f&lt;br /&gt;
|-&lt;br /&gt;
|setmotionblurzoomscale&lt;br /&gt;
|0x8191&lt;br /&gt;
|0x8070&lt;br /&gt;
|-&lt;br /&gt;
|viewkick&lt;br /&gt;
|0x8192&lt;br /&gt;
|0x8071&lt;br /&gt;
|-&lt;br /&gt;
|localtoworldcoords&lt;br /&gt;
|0x8193&lt;br /&gt;
|0x8072&lt;br /&gt;
|-&lt;br /&gt;
|getentitynumber&lt;br /&gt;
|0x8194&lt;br /&gt;
|0x8073&lt;br /&gt;
|-&lt;br /&gt;
|getentityvelocity&lt;br /&gt;
|0x8195&lt;br /&gt;
|0x8074&lt;br /&gt;
|-&lt;br /&gt;
|enablegrenadetouchdamage&lt;br /&gt;
|0x8196&lt;br /&gt;
|0x8075&lt;br /&gt;
|-&lt;br /&gt;
|disablegrenadetouchdamage&lt;br /&gt;
|0x8197&lt;br /&gt;
|0x8076&lt;br /&gt;
|-&lt;br /&gt;
|enableaimassist&lt;br /&gt;
|0x8198&lt;br /&gt;
|0x8077&lt;br /&gt;
|-&lt;br /&gt;
|disableaimassist&lt;br /&gt;
|0x81b7&lt;br /&gt;
|0x8078&lt;br /&gt;
|-&lt;br /&gt;
|radiusdamage&lt;br /&gt;
|0x81b8&lt;br /&gt;
|0x8079&lt;br /&gt;
|-&lt;br /&gt;
|detonate&lt;br /&gt;
|0x81b9&lt;br /&gt;
|0x807a&lt;br /&gt;
|-&lt;br /&gt;
|damageconetrace&lt;br /&gt;
|0x81ba&lt;br /&gt;
|0x807b&lt;br /&gt;
|-&lt;br /&gt;
|sightconetrace&lt;br /&gt;
|0x81bb&lt;br /&gt;
|0x807c&lt;br /&gt;
|-&lt;br /&gt;
|settargetent&lt;br /&gt;
|0x81bc&lt;br /&gt;
|0x807d&lt;br /&gt;
|-&lt;br /&gt;
|settargetpos&lt;br /&gt;
|0x81bd&lt;br /&gt;
|0x807e&lt;br /&gt;
|-&lt;br /&gt;
|cleartarget&lt;br /&gt;
|0x81be&lt;br /&gt;
|0x807f&lt;br /&gt;
|-&lt;br /&gt;
|setflightmodedirect&lt;br /&gt;
|0x81bf&lt;br /&gt;
|0x8080&lt;br /&gt;
|-&lt;br /&gt;
|setflightmodetop&lt;br /&gt;
|0x81c0&lt;br /&gt;
|0x8081&lt;br /&gt;
|-&lt;br /&gt;
|getlightintensity&lt;br /&gt;
|0x81c1&lt;br /&gt;
|0x8082&lt;br /&gt;
|-&lt;br /&gt;
|setlightintensity&lt;br /&gt;
|0x81c2&lt;br /&gt;
|0x8083&lt;br /&gt;
|-&lt;br /&gt;
|isragdoll&lt;br /&gt;
|0x81c3&lt;br /&gt;
|0x8084&lt;br /&gt;
|-&lt;br /&gt;
|setmovespeedscale&lt;br /&gt;
|0x81c4&lt;br /&gt;
|0x8085&lt;br /&gt;
|-&lt;br /&gt;
|cameralinkto&lt;br /&gt;
|0x81c5&lt;br /&gt;
|0x8086&lt;br /&gt;
|-&lt;br /&gt;
|cameraunlink&lt;br /&gt;
|0x81c6&lt;br /&gt;
|0x8087&lt;br /&gt;
|-&lt;br /&gt;
|controlslinkto&lt;br /&gt;
|0x81e3&lt;br /&gt;
|0x8088&lt;br /&gt;
|-&lt;br /&gt;
|controlsunlink&lt;br /&gt;
|0x81e4&lt;br /&gt;
|0x8089&lt;br /&gt;
|-&lt;br /&gt;
|makevehiclesolidcapsule&lt;br /&gt;
|0x81e5&lt;br /&gt;
|0x808a&lt;br /&gt;
|-&lt;br /&gt;
|makevehiclesolidsphere&lt;br /&gt;
|0x81e6&lt;br /&gt;
|0x808b&lt;br /&gt;
|-&lt;br /&gt;
|remotecontrolvehicle&lt;br /&gt;
|0x81e8&lt;br /&gt;
|0x808d&lt;br /&gt;
|-&lt;br /&gt;
|remotecontrolvehicleoff&lt;br /&gt;
|0x81e9&lt;br /&gt;
|0x808e&lt;br /&gt;
|-&lt;br /&gt;
|isfiringvehicleturret&lt;br /&gt;
|0x81ea&lt;br /&gt;
|0x808f&lt;br /&gt;
|-&lt;br /&gt;
|drivevehicleandcontrolturret&lt;br /&gt;
|0x81eb&lt;br /&gt;
|0x8090&lt;br /&gt;
|-&lt;br /&gt;
|drivevehicleandcontrolturretoff&lt;br /&gt;
|0x81ec&lt;br /&gt;
|0x8091&lt;br /&gt;
|-&lt;br /&gt;
|getplayersetting&lt;br /&gt;
|0x81ed&lt;br /&gt;
|0x8092&lt;br /&gt;
|-&lt;br /&gt;
|getlocalplayerprofiledata&lt;br /&gt;
|0x81ee&lt;br /&gt;
|0x8093&lt;br /&gt;
|-&lt;br /&gt;
|setlocalplayerprofiledata&lt;br /&gt;
|0x81ef&lt;br /&gt;
|0x8094&lt;br /&gt;
|-&lt;br /&gt;
|remotecamerasoundscapeon&lt;br /&gt;
|0x81f0&lt;br /&gt;
|0x8095&lt;br /&gt;
|-&lt;br /&gt;
|remotecamerasoundscapeoff&lt;br /&gt;
|0x81f1&lt;br /&gt;
|0x8096&lt;br /&gt;
|-&lt;br /&gt;
|radarjamon&lt;br /&gt;
|0x81f2&lt;br /&gt;
|0x8097&lt;br /&gt;
|-&lt;br /&gt;
|radarjamoff&lt;br /&gt;
|0x81f3&lt;br /&gt;
|0x8098&lt;br /&gt;
|-&lt;br /&gt;
|setmotiontrackervisible&lt;br /&gt;
|0x81f4&lt;br /&gt;
|0x8099&lt;br /&gt;
|-&lt;br /&gt;
|getmotiontrackervisible&lt;br /&gt;
|0x81f5&lt;br /&gt;
|0x809a&lt;br /&gt;
|-&lt;br /&gt;
|circle&lt;br /&gt;
|0x81f6&lt;br /&gt;
|0x809b&lt;br /&gt;
|-&lt;br /&gt;
|getpointinbounds&lt;br /&gt;
|0x81f7&lt;br /&gt;
|0x809c&lt;br /&gt;
|-&lt;br /&gt;
|transfermarkstonewscriptmodel&lt;br /&gt;
|0x81f8&lt;br /&gt;
|0x809d&lt;br /&gt;
|-&lt;br /&gt;
|setwatersheeting&lt;br /&gt;
|0x81f9&lt;br /&gt;
|0x809e&lt;br /&gt;
|-&lt;br /&gt;
|setweaponhudiconoverride&lt;br /&gt;
|0x81fa&lt;br /&gt;
|0x809f&lt;br /&gt;
|-&lt;br /&gt;
|getweaponhudiconoverride&lt;br /&gt;
|0x81fb&lt;br /&gt;
|0x80a0&lt;br /&gt;
|-&lt;br /&gt;
|setempjammed&lt;br /&gt;
|0x81fc&lt;br /&gt;
|0x80a1&lt;br /&gt;
|-&lt;br /&gt;
|playersetexpfog&lt;br /&gt;
|0x81fd&lt;br /&gt;
|0x80a2&lt;br /&gt;
|-&lt;br /&gt;
|isitemunlocked&lt;br /&gt;
|0x81fe&lt;br /&gt;
|0x80a3&lt;br /&gt;
|-&lt;br /&gt;
|getplayerdata&lt;br /&gt;
|0x81ff&lt;br /&gt;
|0x80a4&lt;br /&gt;
|-&lt;br /&gt;
|setplayerdata&lt;br /&gt;
|0x821a&lt;br /&gt;
|0x80a5&lt;br /&gt;
|-&lt;br /&gt;
|trackerupdate&lt;br /&gt;
|N/A&lt;br /&gt;
|0x80a6&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- player 1 --&amp;gt;&lt;br /&gt;
|pingplayer&lt;br /&gt;
|0x821c&lt;br /&gt;
|0x80a7&lt;br /&gt;
|-&lt;br /&gt;
|buttonpressed&lt;br /&gt;
|0x821d&lt;br /&gt;
|0x80a8&lt;br /&gt;
|-&lt;br /&gt;
|sayall&lt;br /&gt;
|0x821e&lt;br /&gt;
|0x80a9&lt;br /&gt;
|-&lt;br /&gt;
|sayteam&lt;br /&gt;
|0x821f&lt;br /&gt;
|0x80aa&lt;br /&gt;
|-&lt;br /&gt;
|showscoreboard&lt;br /&gt;
|0x8220&lt;br /&gt;
|0x80ab&lt;br /&gt;
|-&lt;br /&gt;
|setspawnweapon&lt;br /&gt;
|0x8221&lt;br /&gt;
|0x80ac&lt;br /&gt;
|-&lt;br /&gt;
|dropitem&lt;br /&gt;
|0x8222&lt;br /&gt;
|0x80ad&lt;br /&gt;
|-&lt;br /&gt;
|dropscavengerbag&lt;br /&gt;
|0x8223&lt;br /&gt;
|0x80ae&lt;br /&gt;
|-&lt;br /&gt;
|finishplayerdamage&lt;br /&gt;
|0x823c&lt;br /&gt;
|0x80af&lt;br /&gt;
|-&lt;br /&gt;
|suicide&lt;br /&gt;
|0x823d&lt;br /&gt;
|0x80b0&lt;br /&gt;
|-&lt;br /&gt;
|closeingamemenu&lt;br /&gt;
|0x823e&lt;br /&gt;
|0x80b1&lt;br /&gt;
|-&lt;br /&gt;
|iprintln&lt;br /&gt;
|0x823f&lt;br /&gt;
|0x80b2&lt;br /&gt;
|-&lt;br /&gt;
|iprintlnbold&lt;br /&gt;
|0x8240&lt;br /&gt;
|0x80b3&lt;br /&gt;
|-&lt;br /&gt;
|spawn&lt;br /&gt;
|0x8241&lt;br /&gt;
|0x80b4&lt;br /&gt;
|-&lt;br /&gt;
|setentertime&lt;br /&gt;
|0x8242&lt;br /&gt;
|0x80b5&lt;br /&gt;
|-&lt;br /&gt;
|cloneplayer&lt;br /&gt;
|0x8243&lt;br /&gt;
|0x80b6&lt;br /&gt;
|-&lt;br /&gt;
|istalking&lt;br /&gt;
|0x8244&lt;br /&gt;
|0x80b7&lt;br /&gt;
|-&lt;br /&gt;
|allowspectateteam&lt;br /&gt;
|0x8245&lt;br /&gt;
|0x80b8&lt;br /&gt;
|-&lt;br /&gt;
|getguid&lt;br /&gt;
|0x8246&lt;br /&gt;
|0x80b9&lt;br /&gt;
|-&lt;br /&gt;
|getxuid&lt;br /&gt;
|0x8266&lt;br /&gt;
|0x80ba&lt;br /&gt;
|-&lt;br /&gt;
|ishost&lt;br /&gt;
|0x8267&lt;br /&gt;
|0x80bb&lt;br /&gt;
|-&lt;br /&gt;
|getspectatingplayer&lt;br /&gt;
|0x8268&lt;br /&gt;
|0x80bc&lt;br /&gt;
|-&lt;br /&gt;
|predictstreampos&lt;br /&gt;
|0x8269&lt;br /&gt;
|0x80bd&lt;br /&gt;
|-&lt;br /&gt;
|updatescores&lt;br /&gt;
|0x826a&lt;br /&gt;
|0x80be&lt;br /&gt;
|-&lt;br /&gt;
|updatedmscores&lt;br /&gt;
|0x826b&lt;br /&gt;
|0x80bf&lt;br /&gt;
|-&lt;br /&gt;
|setrank&lt;br /&gt;
|0x826c&lt;br /&gt;
|0x80c0&lt;br /&gt;
|-&lt;br /&gt;
|setcardtitle&lt;br /&gt;
|0x826d&lt;br /&gt;
|0x80c1&lt;br /&gt;
|-&lt;br /&gt;
|setcardicon&lt;br /&gt;
|0x828c&lt;br /&gt;
|0x80c2&lt;br /&gt;
|-&lt;br /&gt;
|setcardnameplate&lt;br /&gt;
|0x828d&lt;br /&gt;
|0x80c3&lt;br /&gt;
|-&lt;br /&gt;
|setcarddisplayslot&lt;br /&gt;
|0x828e&lt;br /&gt;
|0x80c4&lt;br /&gt;
|-&lt;br /&gt;
|kc_regweaponforfxremoval&lt;br /&gt;
|0x828f&lt;br /&gt;
|0x80c5&lt;br /&gt;
|-&lt;br /&gt;
|laststandrevive&lt;br /&gt;
|0x8290&lt;br /&gt;
|0x80c6&lt;br /&gt;
|-&lt;br /&gt;
|setspectatedefaults&lt;br /&gt;
|0x8291&lt;br /&gt;
|0x80c7&lt;br /&gt;
|-&lt;br /&gt;
|getthirdpersoncrosshairoffset&lt;br /&gt;
|0x8292&lt;br /&gt;
|0x80c8&lt;br /&gt;
|-&lt;br /&gt;
|disableweaponpickup&lt;br /&gt;
|0x8293&lt;br /&gt;
|0x80c9&lt;br /&gt;
|-&lt;br /&gt;
|enableweaponpickup&lt;br /&gt;
|0x8294&lt;br /&gt;
|0x80ca&lt;br /&gt;
|-&lt;br /&gt;
|issplitscreenplayer&lt;br /&gt;
|N/A&lt;br /&gt;
|0x80cb&lt;br /&gt;
|-&lt;br /&gt;
|issplitscreenplayerprimary&lt;br /&gt;
|N/A&lt;br /&gt;
|0x80cc&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- player 2 --&amp;gt;&lt;br /&gt;
|getviewmodel&lt;br /&gt;
|0x82b1&lt;br /&gt;
|0x80cd&lt;br /&gt;
|-&lt;br /&gt;
|fragbuttonpressed&lt;br /&gt;
|0x82b2&lt;br /&gt;
|0x80ce&lt;br /&gt;
|-&lt;br /&gt;
|secondaryoffhandbuttonpressed&lt;br /&gt;
|0x82b3&lt;br /&gt;
|0x80cf&lt;br /&gt;
|-&lt;br /&gt;
|getcurrentweaponclipammo&lt;br /&gt;
|0x82b4&lt;br /&gt;
|0x80d0&lt;br /&gt;
|-&lt;br /&gt;
|setvelocity&lt;br /&gt;
|0x82b5&lt;br /&gt;
|0x80d1&lt;br /&gt;
|-&lt;br /&gt;
|getplayerviewheight&lt;br /&gt;
|0x82b6&lt;br /&gt;
|0x80d2&lt;br /&gt;
|-&lt;br /&gt;
|enablemousesteer&lt;br /&gt;
|0x8309&lt;br /&gt;
|0x8309&lt;br /&gt;
|-&lt;br /&gt;
|getnormalizedmovement&lt;br /&gt;
|0x82b7&lt;br /&gt;
|0x80d3&lt;br /&gt;
|-&lt;br /&gt;
|getnormalizedcameramovement&lt;br /&gt;
|0x82ce&lt;br /&gt;
|0x80d4&lt;br /&gt;
|-&lt;br /&gt;
|giveweapon&lt;br /&gt;
|0x82cf&lt;br /&gt;
|0x80d5&lt;br /&gt;
|-&lt;br /&gt;
|takeweapon&lt;br /&gt;
|0x82d0&lt;br /&gt;
|0x80d6&lt;br /&gt;
|-&lt;br /&gt;
|takeallweapons&lt;br /&gt;
|0x82d1&lt;br /&gt;
|0x80d7&lt;br /&gt;
|-&lt;br /&gt;
|getcurrentweapon&lt;br /&gt;
|0x82d2&lt;br /&gt;
|0x80d8&lt;br /&gt;
|-&lt;br /&gt;
|getcurrentprimaryweapon&lt;br /&gt;
|0x82d3&lt;br /&gt;
|0x80d9&lt;br /&gt;
|-&lt;br /&gt;
|getcurrentoffhand&lt;br /&gt;
|0x82d4&lt;br /&gt;
|0x80da&lt;br /&gt;
|-&lt;br /&gt;
|hasweapon&lt;br /&gt;
|0x82d5&lt;br /&gt;
|0x80db&lt;br /&gt;
|-&lt;br /&gt;
|switchtoweapon&lt;br /&gt;
|0x82d6&lt;br /&gt;
|0x80dc&lt;br /&gt;
|-&lt;br /&gt;
|switchtoweaponimmediate&lt;br /&gt;
|0x82d7&lt;br /&gt;
|0x80dd&lt;br /&gt;
|-&lt;br /&gt;
|switchtooffhand&lt;br /&gt;
|0x82d8&lt;br /&gt;
|0x80de&lt;br /&gt;
|-&lt;br /&gt;
|givestartammo&lt;br /&gt;
|0x82f2&lt;br /&gt;
|0x80df&lt;br /&gt;
|-&lt;br /&gt;
|givemaxammo&lt;br /&gt;
|0x82f3&lt;br /&gt;
|0x80e0&lt;br /&gt;
|-&lt;br /&gt;
|getfractionstartammo&lt;br /&gt;
|0x82f4&lt;br /&gt;
|0x80e1&lt;br /&gt;
|-&lt;br /&gt;
|getfractionmaxammo&lt;br /&gt;
|0x82f5&lt;br /&gt;
|0x80e2&lt;br /&gt;
|-&lt;br /&gt;
|isdualwielding&lt;br /&gt;
|0x82f6&lt;br /&gt;
|0x80e3&lt;br /&gt;
|-&lt;br /&gt;
|isreloading&lt;br /&gt;
|0x82f7&lt;br /&gt;
|0x80e4&lt;br /&gt;
|-&lt;br /&gt;
|isswitchingweapon&lt;br /&gt;
|0x82f8&lt;br /&gt;
|0x80e5&lt;br /&gt;
|-&lt;br /&gt;
|setorigin&lt;br /&gt;
|0x82f9&lt;br /&gt;
|0x80e6&lt;br /&gt;
|-&lt;br /&gt;
|getvelocity&lt;br /&gt;
|0x82fa&lt;br /&gt;
|0x80e7&lt;br /&gt;
|-&lt;br /&gt;
|setplayerangles&lt;br /&gt;
|0x82fb&lt;br /&gt;
|0x80e8&lt;br /&gt;
|-&lt;br /&gt;
|getplayerangles&lt;br /&gt;
|0x82fc&lt;br /&gt;
|0x80e9&lt;br /&gt;
|-&lt;br /&gt;
|usebuttonpressed&lt;br /&gt;
|0x82fd&lt;br /&gt;
|0x80ea&lt;br /&gt;
|-&lt;br /&gt;
|attackbuttonpressed&lt;br /&gt;
|0x82fe&lt;br /&gt;
|0x80eb&lt;br /&gt;
|-&lt;br /&gt;
|adsbuttonpressed&lt;br /&gt;
|0x82ff&lt;br /&gt;
|0x80ec&lt;br /&gt;
|-&lt;br /&gt;
|meleebuttonpressed&lt;br /&gt;
|0x8300&lt;br /&gt;
|0x80ed&lt;br /&gt;
|-&lt;br /&gt;
|playerads&lt;br /&gt;
|0x8301&lt;br /&gt;
|0x80ee&lt;br /&gt;
|-&lt;br /&gt;
|isonground&lt;br /&gt;
|0x8302&lt;br /&gt;
|0x80ef&lt;br /&gt;
|-&lt;br /&gt;
|isusingturret&lt;br /&gt;
|0x8303&lt;br /&gt;
|0x80f0&lt;br /&gt;
|-&lt;br /&gt;
|setviewmodel&lt;br /&gt;
|0x8304&lt;br /&gt;
|0x80f1&lt;br /&gt;
|-&lt;br /&gt;
|setoffhandprimaryclass&lt;br /&gt;
|0x8305&lt;br /&gt;
|0x80f2&lt;br /&gt;
|-&lt;br /&gt;
|getoffhandprimaryclass&lt;br /&gt;
|0x8306&lt;br /&gt;
|0x80f3&lt;br /&gt;
|-&lt;br /&gt;
|setoffhandsecondaryclass&lt;br /&gt;
|0x82d9&lt;br /&gt;
|0x80f4&lt;br /&gt;
|-&lt;br /&gt;
|getoffhandsecondaryclass&lt;br /&gt;
|0x82da&lt;br /&gt;
|0x80f5&lt;br /&gt;
|-&lt;br /&gt;
|beginlocationselection&lt;br /&gt;
|0x82db&lt;br /&gt;
|0x80f6&lt;br /&gt;
|-&lt;br /&gt;
|endlocationselection&lt;br /&gt;
|0x82dc&lt;br /&gt;
|0x80f7&lt;br /&gt;
|-&lt;br /&gt;
|disableweapons&lt;br /&gt;
|0x82dd&lt;br /&gt;
|0x80f8&lt;br /&gt;
|-&lt;br /&gt;
|enableweapons&lt;br /&gt;
|0x82de&lt;br /&gt;
|0x80f9&lt;br /&gt;
|-&lt;br /&gt;
|disableoffhandweapons&lt;br /&gt;
|0x82df&lt;br /&gt;
|0x80fa&lt;br /&gt;
|-&lt;br /&gt;
|enableoffhandweapons&lt;br /&gt;
|0x82e0&lt;br /&gt;
|0x80fb&lt;br /&gt;
|-&lt;br /&gt;
|disableweaponswitch&lt;br /&gt;
|0x82e1&lt;br /&gt;
|0x80fc&lt;br /&gt;
|-&lt;br /&gt;
|enableweaponswitch&lt;br /&gt;
|0x82e2&lt;br /&gt;
|0x80fd&lt;br /&gt;
|-&lt;br /&gt;
|openpopupmenu&lt;br /&gt;
|0x82e3&lt;br /&gt;
|0x80fe&lt;br /&gt;
|-&lt;br /&gt;
|openpopupmenunomouse&lt;br /&gt;
|0x82e4&lt;br /&gt;
|0x80ff&lt;br /&gt;
|-&lt;br /&gt;
|closepopupmenu&lt;br /&gt;
|0x82e5&lt;br /&gt;
|0x8100&lt;br /&gt;
|-&lt;br /&gt;
|openmenu&lt;br /&gt;
|0x82e6&lt;br /&gt;
|0x8101&lt;br /&gt;
|-&lt;br /&gt;
|closemenu&lt;br /&gt;
|0x82e7&lt;br /&gt;
|0x8102&lt;br /&gt;
|-&lt;br /&gt;
|freezecontrols&lt;br /&gt;
|0x82e9&lt;br /&gt;
|0x8104&lt;br /&gt;
|-&lt;br /&gt;
|disableusability&lt;br /&gt;
|0x82ea&lt;br /&gt;
|0x8105&lt;br /&gt;
|-&lt;br /&gt;
|enableusability&lt;br /&gt;
|0x82eb&lt;br /&gt;
|0x8106&lt;br /&gt;
|-&lt;br /&gt;
|setwhizbyspreads&lt;br /&gt;
|0x82ec&lt;br /&gt;
|0x8107&lt;br /&gt;
|-&lt;br /&gt;
|setwhizbyradii&lt;br /&gt;
|0x82ed&lt;br /&gt;
|0x8108&lt;br /&gt;
|-&lt;br /&gt;
|setreverb&lt;br /&gt;
|0x82ee&lt;br /&gt;
|0x8109&lt;br /&gt;
|-&lt;br /&gt;
|deactivatereverb&lt;br /&gt;
|0x82ef&lt;br /&gt;
|0x810a&lt;br /&gt;
|-&lt;br /&gt;
|setvolmod&lt;br /&gt;
|0x82f0&lt;br /&gt;
|0x810b&lt;br /&gt;
|-&lt;br /&gt;
|setchannelvolume&lt;br /&gt;
|0x82f1&lt;br /&gt;
|0x810c&lt;br /&gt;
|-&lt;br /&gt;
|setchannelvolumes&lt;br /&gt;
|0x82b8&lt;br /&gt;
|0x810d&lt;br /&gt;
|-&lt;br /&gt;
|deactivatechannelvolumes&lt;br /&gt;
|0x82b9&lt;br /&gt;
|0x810e&lt;br /&gt;
|-&lt;br /&gt;
|playlocalsound&lt;br /&gt;
|0x82ba&lt;br /&gt;
|0x810f&lt;br /&gt;
|-&lt;br /&gt;
|stoplocalsound&lt;br /&gt;
|0x82bb&lt;br /&gt;
|0x8110&lt;br /&gt;
|-&lt;br /&gt;
|setweaponammoclip&lt;br /&gt;
|0x82bc&lt;br /&gt;
|0x8111&lt;br /&gt;
|-&lt;br /&gt;
|setweaponammostock&lt;br /&gt;
|0x82bd&lt;br /&gt;
|0x8112&lt;br /&gt;
|-&lt;br /&gt;
|getweaponammoclip&lt;br /&gt;
|0x82be&lt;br /&gt;
|0x8113&lt;br /&gt;
|-&lt;br /&gt;
|getweaponammostock&lt;br /&gt;
|0x82bf&lt;br /&gt;
|0x8114&lt;br /&gt;
|-&lt;br /&gt;
|anyammoforweaponmodes&lt;br /&gt;
|0x82c0&lt;br /&gt;
|0x8115&lt;br /&gt;
|-&lt;br /&gt;
|setclientdvar&lt;br /&gt;
|0x82c1&lt;br /&gt;
|0x8116&lt;br /&gt;
|-&lt;br /&gt;
|setclientdvars&lt;br /&gt;
|0x82c2&lt;br /&gt;
|0x8117&lt;br /&gt;
|-&lt;br /&gt;
|allowads&lt;br /&gt;
|0x82c3&lt;br /&gt;
|0x8118&lt;br /&gt;
|-&lt;br /&gt;
|allowjump&lt;br /&gt;
|0x82c4&lt;br /&gt;
|0x8119&lt;br /&gt;
|-&lt;br /&gt;
|allowsprint&lt;br /&gt;
|0x82c5&lt;br /&gt;
|0x811a&lt;br /&gt;
|-&lt;br /&gt;
|setspreadoverride&lt;br /&gt;
|0x82c6&lt;br /&gt;
|0x811b&lt;br /&gt;
|-&lt;br /&gt;
|resetspreadoverride&lt;br /&gt;
|0x82c7&lt;br /&gt;
|0x811c&lt;br /&gt;
|-&lt;br /&gt;
|setaimspreadmovementscale&lt;br /&gt;
|0x82c8&lt;br /&gt;
|0x811d&lt;br /&gt;
|-&lt;br /&gt;
|setactionslot&lt;br /&gt;
|0x82c9&lt;br /&gt;
|0x811e&lt;br /&gt;
|-&lt;br /&gt;
|setviewkickscale&lt;br /&gt;
|0x82ca&lt;br /&gt;
|0x811f&lt;br /&gt;
|-&lt;br /&gt;
|getviewkickscale&lt;br /&gt;
|0x82cb&lt;br /&gt;
|0x8120&lt;br /&gt;
|-&lt;br /&gt;
|getweaponslistall&lt;br /&gt;
|0x82cc&lt;br /&gt;
|0x8121&lt;br /&gt;
|-&lt;br /&gt;
|getweaponslistprimaries&lt;br /&gt;
|0x82cd&lt;br /&gt;
|0x8122&lt;br /&gt;
|-&lt;br /&gt;
|getweaponslistoffhands&lt;br /&gt;
|0x8296&lt;br /&gt;
|0x8123&lt;br /&gt;
|-&lt;br /&gt;
|getweaponslistitems&lt;br /&gt;
|0x8297&lt;br /&gt;
|0x8124&lt;br /&gt;
|-&lt;br /&gt;
|getweaponslistexclusives&lt;br /&gt;
|0x8298&lt;br /&gt;
|0x8125&lt;br /&gt;
|-&lt;br /&gt;
|getweaponslist&lt;br /&gt;
|0x8299&lt;br /&gt;
|0x8126&lt;br /&gt;
|-&lt;br /&gt;
|canplayerplacesentry&lt;br /&gt;
|0x829a&lt;br /&gt;
|0x8127&lt;br /&gt;
|-&lt;br /&gt;
|canplayerplacetank&lt;br /&gt;
|0x829b&lt;br /&gt;
|0x8128&lt;br /&gt;
|-&lt;br /&gt;
|visionsetnakedforplayer&lt;br /&gt;
|0x829c&lt;br /&gt;
|0x8129&lt;br /&gt;
|-&lt;br /&gt;
|visionsetnightforplayer&lt;br /&gt;
|0x829d&lt;br /&gt;
|0x812a&lt;br /&gt;
|-&lt;br /&gt;
|visionsetmissilecamforplayer&lt;br /&gt;
|0x829e&lt;br /&gt;
|0x812b&lt;br /&gt;
|-&lt;br /&gt;
|visionsetthermalforplayer&lt;br /&gt;
|0x829f&lt;br /&gt;
|0x812c&lt;br /&gt;
|-&lt;br /&gt;
|visionsetpainforplayer&lt;br /&gt;
|0x82a0&lt;br /&gt;
|0x812d&lt;br /&gt;
|-&lt;br /&gt;
|setblurforplayer&lt;br /&gt;
|0x82a1&lt;br /&gt;
|0x812e&lt;br /&gt;
|-&lt;br /&gt;
|getplayerweaponmodel&lt;br /&gt;
|0x82a2&lt;br /&gt;
|0x812f&lt;br /&gt;
|-&lt;br /&gt;
|getplayerknifemodel&lt;br /&gt;
|0x82a3&lt;br /&gt;
|0x8130&lt;br /&gt;
|-&lt;br /&gt;
|updateplayermodelwithweapons&lt;br /&gt;
|0x82a4&lt;br /&gt;
|0x8131&lt;br /&gt;
|-&lt;br /&gt;
|notifyonplayercommand&lt;br /&gt;
|0x82a5&lt;br /&gt;
|0x8132&lt;br /&gt;
|-&lt;br /&gt;
|canmantle&lt;br /&gt;
|0x82a6&lt;br /&gt;
|0x8133&lt;br /&gt;
|-&lt;br /&gt;
|forcemantle&lt;br /&gt;
|0x82a7&lt;br /&gt;
|0x8134&lt;br /&gt;
|-&lt;br /&gt;
|ismantling&lt;br /&gt;
|0x82a8&lt;br /&gt;
|0x8135&lt;br /&gt;
|-&lt;br /&gt;
|playfx&lt;br /&gt;
|0x82a9&lt;br /&gt;
|0x8136&lt;br /&gt;
|-&lt;br /&gt;
|recoilscaleon&lt;br /&gt;
|0x82aa&lt;br /&gt;
|0x8137&lt;br /&gt;
|-&lt;br /&gt;
|recoilscaleoff&lt;br /&gt;
|0x82ab&lt;br /&gt;
|0x8138&lt;br /&gt;
|-&lt;br /&gt;
|weaponlockstart&lt;br /&gt;
|0x82ac&lt;br /&gt;
|0x8139&lt;br /&gt;
|-&lt;br /&gt;
|weaponlockfinalize&lt;br /&gt;
|0x82ad&lt;br /&gt;
|0x813a&lt;br /&gt;
|-&lt;br /&gt;
|weaponlockfree&lt;br /&gt;
|0x82ae&lt;br /&gt;
|0x813b&lt;br /&gt;
|-&lt;br /&gt;
|weaponlocktargettooclose&lt;br /&gt;
|0x82af&lt;br /&gt;
|0x813c&lt;br /&gt;
|-&lt;br /&gt;
|weaponlocknoclearance&lt;br /&gt;
|0x826e&lt;br /&gt;
|0x813d&lt;br /&gt;
|-&lt;br /&gt;
|visionsyncwithplayer&lt;br /&gt;
|0x826f&lt;br /&gt;
|0x813e&lt;br /&gt;
|-&lt;br /&gt;
|showhudsplash&lt;br /&gt;
|0x8270&lt;br /&gt;
|0x813f&lt;br /&gt;
|-&lt;br /&gt;
|setperk&lt;br /&gt;
|0x8271&lt;br /&gt;
|0x8140&lt;br /&gt;
|-&lt;br /&gt;
|hasperk&lt;br /&gt;
|0x8272&lt;br /&gt;
|0x8141&lt;br /&gt;
|-&lt;br /&gt;
|clearperks&lt;br /&gt;
|0x8273&lt;br /&gt;
|0x8142&lt;br /&gt;
|-&lt;br /&gt;
|unsetperk&lt;br /&gt;
|0x8274&lt;br /&gt;
|0x8143&lt;br /&gt;
|-&lt;br /&gt;
|noclip&lt;br /&gt;
|0x8275&lt;br /&gt;
|0x8144&lt;br /&gt;
|-&lt;br /&gt;
|ufo&lt;br /&gt;
|0x8276&lt;br /&gt;
|0x8145&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- script ent --&amp;gt;&lt;br /&gt;
|moveto&lt;br /&gt;
|0x8277&lt;br /&gt;
|0x8146&lt;br /&gt;
|-&lt;br /&gt;
|movex&lt;br /&gt;
|0x8278&lt;br /&gt;
|0x8147&lt;br /&gt;
|-&lt;br /&gt;
|movey&lt;br /&gt;
|0x8279&lt;br /&gt;
|0x8148&lt;br /&gt;
|-&lt;br /&gt;
|movez&lt;br /&gt;
|0x827A&lt;br /&gt;
|0x8149&lt;br /&gt;
|-&lt;br /&gt;
|movegravity&lt;br /&gt;
|0x827B&lt;br /&gt;
|0x814A&lt;br /&gt;
|-&lt;br /&gt;
|moveslide&lt;br /&gt;
|0x827C&lt;br /&gt;
|0x814B&lt;br /&gt;
|-&lt;br /&gt;
|stopmoveslide&lt;br /&gt;
|0x827D&lt;br /&gt;
|0x814C&lt;br /&gt;
|-&lt;br /&gt;
|rotateto&lt;br /&gt;
|0x827E&lt;br /&gt;
|0x814D&lt;br /&gt;
|-&lt;br /&gt;
|rotatepitch&lt;br /&gt;
|0x827F&lt;br /&gt;
|0x814E&lt;br /&gt;
|-&lt;br /&gt;
|rotateyaw&lt;br /&gt;
|0x8280&lt;br /&gt;
|0x814F&lt;br /&gt;
|-&lt;br /&gt;
|rotateroll&lt;br /&gt;
|0x8281&lt;br /&gt;
|0x8150&lt;br /&gt;
|-&lt;br /&gt;
|addpitch&lt;br /&gt;
|0x8282&lt;br /&gt;
|0x8151&lt;br /&gt;
|-&lt;br /&gt;
|addyaw&lt;br /&gt;
|0x8283&lt;br /&gt;
|0x8152&lt;br /&gt;
|-&lt;br /&gt;
|addroll&lt;br /&gt;
|0x8284&lt;br /&gt;
|0x8153&lt;br /&gt;
|-&lt;br /&gt;
|vibrate&lt;br /&gt;
|0x8285&lt;br /&gt;
|0x8154&lt;br /&gt;
|-&lt;br /&gt;
|rotatevelocity&lt;br /&gt;
|0x8286&lt;br /&gt;
|0x8155&lt;br /&gt;
|-&lt;br /&gt;
|solid&lt;br /&gt;
|0x8287&lt;br /&gt;
|0x8156&lt;br /&gt;
|-&lt;br /&gt;
|notsolid&lt;br /&gt;
|0x8288&lt;br /&gt;
|0x8157&lt;br /&gt;
|-&lt;br /&gt;
|setcandamage&lt;br /&gt;
|0x8289&lt;br /&gt;
|0x8158&lt;br /&gt;
|-&lt;br /&gt;
|setcanradiusdamage&lt;br /&gt;
|0x828A&lt;br /&gt;
|0x8159&lt;br /&gt;
|-&lt;br /&gt;
|physicslaunchclient&lt;br /&gt;
|0x828B&lt;br /&gt;
|0x815A&lt;br /&gt;
|-&lt;br /&gt;
|physicslaunchserver&lt;br /&gt;
|0x8247&lt;br /&gt;
|0x815B&lt;br /&gt;
|-&lt;br /&gt;
|physicslaunchserveritem&lt;br /&gt;
|0x8248&lt;br /&gt;
|0x815C&lt;br /&gt;
|-&lt;br /&gt;
|clonebrushmodeltoscriptmodel&lt;br /&gt;
|0x8249&lt;br /&gt;
|0x815D&lt;br /&gt;
|-&lt;br /&gt;
|scriptmodelplayanim&lt;br /&gt;
|0x824A&lt;br /&gt;
|0x815E&lt;br /&gt;
|-&lt;br /&gt;
|scriptmodelclearanim&lt;br /&gt;
|0x824B&lt;br /&gt;
|0x815F&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- vehicle --&amp;gt;&lt;br /&gt;
|vehicle_teleport&lt;br /&gt;
|0x824C&lt;br /&gt;
|0x8160&lt;br /&gt;
|-&lt;br /&gt;
|attachpath&lt;br /&gt;
|0x824D&lt;br /&gt;
|0x8161&lt;br /&gt;
|-&lt;br /&gt;
|getattachpos&lt;br /&gt;
|0x824E&lt;br /&gt;
|0x8162&lt;br /&gt;
|-&lt;br /&gt;
|startpath&lt;br /&gt;
|0x824F&lt;br /&gt;
|0x8163&lt;br /&gt;
|-&lt;br /&gt;
|setswitchnode&lt;br /&gt;
|0x8250&lt;br /&gt;
|0x8164&lt;br /&gt;
|-&lt;br /&gt;
|setwaitspeed&lt;br /&gt;
|0x8251&lt;br /&gt;
|0x8165&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_finishdamage&lt;br /&gt;
|0x8252&lt;br /&gt;
|0x8166&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_setspeed&lt;br /&gt;
|0x8253&lt;br /&gt;
|0x8167&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_setspeedimmediate&lt;br /&gt;
|0x8254&lt;br /&gt;
|0x8168&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_rotateyaw&lt;br /&gt;
|0x8255&lt;br /&gt;
|0x8169&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_getspeed&lt;br /&gt;
|0x8256&lt;br /&gt;
|0x816a&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_getvelocity&lt;br /&gt;
|0x8257&lt;br /&gt;
|0x816b&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_getbodyvelocity&lt;br /&gt;
|0x8258&lt;br /&gt;
|0x816c&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_getsteering&lt;br /&gt;
|0x8259&lt;br /&gt;
|0x816d&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_getthrottle&lt;br /&gt;
|0x825A&lt;br /&gt;
|0x816e&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_turnengineoff&lt;br /&gt;
|0x825B&lt;br /&gt;
|0x816f&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_turnengineon&lt;br /&gt;
|0x825C&lt;br /&gt;
|0x8170&lt;br /&gt;
|-&lt;br /&gt;
|getgoalspeedmph&lt;br /&gt;
|0x825D&lt;br /&gt;
|0x8171&lt;br /&gt;
|-&lt;br /&gt;
|setacceleration&lt;br /&gt;
|0x825E&lt;br /&gt;
|0x8172&lt;br /&gt;
|-&lt;br /&gt;
|setdeceleration&lt;br /&gt;
|0x825F&lt;br /&gt;
|0x8173&lt;br /&gt;
|-&lt;br /&gt;
|resumespeed&lt;br /&gt;
|0x8260&lt;br /&gt;
|0x8174&lt;br /&gt;
|-&lt;br /&gt;
|setyawspeed&lt;br /&gt;
|0x8261&lt;br /&gt;
|0x8175&lt;br /&gt;
|-&lt;br /&gt;
|setyawspeedbyname&lt;br /&gt;
|0x8262&lt;br /&gt;
|0x8176&lt;br /&gt;
|-&lt;br /&gt;
|setmaxpitchroll&lt;br /&gt;
|0x8263&lt;br /&gt;
|0x8177&lt;br /&gt;
|-&lt;br /&gt;
|setairresistance&lt;br /&gt;
|0x8264&lt;br /&gt;
|0x8178&lt;br /&gt;
|-&lt;br /&gt;
|setturningability&lt;br /&gt;
|0x8265&lt;br /&gt;
|0x8179&lt;br /&gt;
|-&lt;br /&gt;
|setjitterparams&lt;br /&gt;
|0x8224&lt;br /&gt;
|0x817a&lt;br /&gt;
|-&lt;br /&gt;
|sethoverparams&lt;br /&gt;
|0x8225&lt;br /&gt;
|0x817b&lt;br /&gt;
|-&lt;br /&gt;
|joltbody&lt;br /&gt;
|0x8226&lt;br /&gt;
|0x817c&lt;br /&gt;
|-&lt;br /&gt;
|freevehicle&lt;br /&gt;
|0x8227&lt;br /&gt;
|0x817d&lt;br /&gt;
|-&lt;br /&gt;
|getwheelsurface&lt;br /&gt;
|0x8228&lt;br /&gt;
|0x817e&lt;br /&gt;
|-&lt;br /&gt;
|getvehicleowner&lt;br /&gt;
|0x8229&lt;br /&gt;
|0x817f&lt;br /&gt;
|-&lt;br /&gt;
|setvehiclelookattext&lt;br /&gt;
|0x822A&lt;br /&gt;
|0x8180&lt;br /&gt;
|-&lt;br /&gt;
|setvehicleteam&lt;br /&gt;
|0x822B&lt;br /&gt;
|0x8181&lt;br /&gt;
|-&lt;br /&gt;
|setneargoalnotifydist&lt;br /&gt;
|0x822C&lt;br /&gt;
|0x8182&lt;br /&gt;
|-&lt;br /&gt;
|setvehgoalpos&lt;br /&gt;
|0x822D&lt;br /&gt;
|0x8183&lt;br /&gt;
|-&lt;br /&gt;
|setgoalyaw&lt;br /&gt;
|0x822E&lt;br /&gt;
|0x8184&lt;br /&gt;
|-&lt;br /&gt;
|cleargoalyaw&lt;br /&gt;
|0x822F&lt;br /&gt;
|0x8185&lt;br /&gt;
|-&lt;br /&gt;
|settargetyaw&lt;br /&gt;
|0x8230&lt;br /&gt;
|0x8186&lt;br /&gt;
|-&lt;br /&gt;
|cleartargetyaw&lt;br /&gt;
|0x8231&lt;br /&gt;
|0x8187&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_helisetai&lt;br /&gt;
|0x8232&lt;br /&gt;
|0x8188&lt;br /&gt;
|-&lt;br /&gt;
|setturrettargetvec&lt;br /&gt;
|0x8233&lt;br /&gt;
|0x8189&lt;br /&gt;
|-&lt;br /&gt;
|setturrettargetent&lt;br /&gt;
|0x8234&lt;br /&gt;
|0x818a&lt;br /&gt;
|-&lt;br /&gt;
|clearturrettarget&lt;br /&gt;
|0x8235&lt;br /&gt;
|0x818b&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_canturrettargetpoint&lt;br /&gt;
|0x8236&lt;br /&gt;
|0x818c&lt;br /&gt;
|-&lt;br /&gt;
|setlookatent&lt;br /&gt;
|0x8237&lt;br /&gt;
|0x818d&lt;br /&gt;
|-&lt;br /&gt;
|clearlookatent&lt;br /&gt;
|0x8238&lt;br /&gt;
|0x818e&lt;br /&gt;
|-&lt;br /&gt;
|setvehweapon&lt;br /&gt;
|0x8239&lt;br /&gt;
|0x818f&lt;br /&gt;
|-&lt;br /&gt;
|fireweapon&lt;br /&gt;
|0x823A&lt;br /&gt;
|0x8190&lt;br /&gt;
|-&lt;br /&gt;
|vehicleturretcontrolon&lt;br /&gt;
|0x823B&lt;br /&gt;
|0x8191&lt;br /&gt;
|-&lt;br /&gt;
|vehicleturretcontroloff&lt;br /&gt;
|0x8200&lt;br /&gt;
|0x8192&lt;br /&gt;
|-&lt;br /&gt;
|isturretready&lt;br /&gt;
|0x8201&lt;br /&gt;
|0x8193&lt;br /&gt;
|-&lt;br /&gt;
|vehicledriveto&lt;br /&gt;
|0x8202&lt;br /&gt;
|0x8194&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_dospawn&lt;br /&gt;
|0x8203&lt;br /&gt;
|0x8195&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_isphysveh&lt;br /&gt;
|0x8204&lt;br /&gt;
|0x8196&lt;br /&gt;
|-&lt;br /&gt;
|vehphys_crash&lt;br /&gt;
|0x8205&lt;br /&gt;
|0x8197&lt;br /&gt;
|-&lt;br /&gt;
|vehphys_launch&lt;br /&gt;
|0x8206&lt;br /&gt;
|0x8198&lt;br /&gt;
|-&lt;br /&gt;
|vehphys_disablecrashing&lt;br /&gt;
|0x8207&lt;br /&gt;
|0x8199&lt;br /&gt;
|-&lt;br /&gt;
|vehphys_enablecrashing&lt;br /&gt;
|0x8208&lt;br /&gt;
|0x819a&lt;br /&gt;
|-&lt;br /&gt;
|vehphys_setspeed&lt;br /&gt;
|0x8209&lt;br /&gt;
|0x819b&lt;br /&gt;
|-&lt;br /&gt;
|vehphys_setconveyorbelt&lt;br /&gt;
|0x820A&lt;br /&gt;
|0x819c&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- helicopter --&amp;gt;&lt;br /&gt;
|freehelicopter&lt;br /&gt;
|0x820B&lt;br /&gt;
|0x819D&lt;br /&gt;
|-&lt;br /&gt;
|setdamagestage&lt;br /&gt;
|0x8002&lt;br /&gt;
|0x82F2&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- hud element --&amp;gt;&lt;br /&gt;
|settext&lt;br /&gt;
|0x80b6&lt;br /&gt;
|0x827d&lt;br /&gt;
|-&lt;br /&gt;
|clearalltextafterhudelem&lt;br /&gt;
|0x80b7&lt;br /&gt;
|0x827e&lt;br /&gt;
|-&lt;br /&gt;
|setshader&lt;br /&gt;
|0x80b8&lt;br /&gt;
|0x827f&lt;br /&gt;
|-&lt;br /&gt;
|settargetent&lt;br /&gt;
|0x80b9&lt;br /&gt;
|0x8280&lt;br /&gt;
|-&lt;br /&gt;
|cleartargetent&lt;br /&gt;
|0x80ba&lt;br /&gt;
|0x8281&lt;br /&gt;
|-&lt;br /&gt;
|settimer&lt;br /&gt;
|0x80bb&lt;br /&gt;
|0x8282&lt;br /&gt;
|-&lt;br /&gt;
|settimerup&lt;br /&gt;
|0x80bc&lt;br /&gt;
|0x8283&lt;br /&gt;
|-&lt;br /&gt;
|settimerstatic&lt;br /&gt;
|0x80bd&lt;br /&gt;
|0x8284&lt;br /&gt;
|-&lt;br /&gt;
|settenthstimer&lt;br /&gt;
|0x80be&lt;br /&gt;
|0x8285&lt;br /&gt;
|-&lt;br /&gt;
|settenthstimerup&lt;br /&gt;
|0x80bf&lt;br /&gt;
|0x8286&lt;br /&gt;
|-&lt;br /&gt;
|settenthstimerstatic&lt;br /&gt;
|0x80c0&lt;br /&gt;
|0x8287&lt;br /&gt;
|-&lt;br /&gt;
|setclock&lt;br /&gt;
|0x80c1&lt;br /&gt;
|0x8288&lt;br /&gt;
|-&lt;br /&gt;
|setclockup&lt;br /&gt;
|0x80c2&lt;br /&gt;
|0x8289&lt;br /&gt;
|-&lt;br /&gt;
|setvalue&lt;br /&gt;
|0x80c3&lt;br /&gt;
|0x828a&lt;br /&gt;
|-&lt;br /&gt;
|setwaypoint&lt;br /&gt;
|0x80c4&lt;br /&gt;
|0x828b&lt;br /&gt;
|-&lt;br /&gt;
|rotatingicon&lt;br /&gt;
|0x80c5&lt;br /&gt;
|0x828c&lt;br /&gt;
|-&lt;br /&gt;
|secondaryarrow&lt;br /&gt;
|0x807b&lt;br /&gt;
|0x828d&lt;br /&gt;
|-&lt;br /&gt;
|setwaypointiconoffscreenonly&lt;br /&gt;
|0x807c&lt;br /&gt;
|0x828e&lt;br /&gt;
|-&lt;br /&gt;
|fadeovertime&lt;br /&gt;
|0x807d&lt;br /&gt;
|0x828f&lt;br /&gt;
|-&lt;br /&gt;
|scaleovertime&lt;br /&gt;
|0x807e&lt;br /&gt;
|0x8290&lt;br /&gt;
|-&lt;br /&gt;
|moveovertime&lt;br /&gt;
|0x807f&lt;br /&gt;
|0x8291&lt;br /&gt;
|-&lt;br /&gt;
|reset&lt;br /&gt;
|0x8080&lt;br /&gt;
|0x8292&lt;br /&gt;
|-&lt;br /&gt;
|destroy&lt;br /&gt;
|0x8081&lt;br /&gt;
|0x8293&lt;br /&gt;
|-&lt;br /&gt;
|setpulsefx&lt;br /&gt;
|0x8082&lt;br /&gt;
|0x8294&lt;br /&gt;
|-&lt;br /&gt;
|setplayernamestring&lt;br /&gt;
|0x8083&lt;br /&gt;
|0x8295&lt;br /&gt;
|-&lt;br /&gt;
|changefontscaleovertime&lt;br /&gt;
|N/A&lt;br /&gt;
|0x8296&lt;br /&gt;
|-&lt;br /&gt;
|fadeovertime2&lt;br /&gt;
|0x830b&lt;br /&gt;
|N/A&lt;br /&gt;
|-&lt;br /&gt;
|scaleovertime2&lt;br /&gt;
|0x830c&lt;br /&gt;
|N/A&lt;br /&gt;
|-&lt;br /&gt;
|moveovertime2&lt;br /&gt;
|0x8084&lt;br /&gt;
|N/A&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- client? --&amp;gt;&lt;br /&gt;
|getorigin&lt;br /&gt;
|0x808E&lt;br /&gt;
|0x82a0&lt;br /&gt;
|-&lt;br /&gt;
|useby&lt;br /&gt;
|0x8092&lt;br /&gt;
|0x82a4&lt;br /&gt;
|-&lt;br /&gt;
|playsound&lt;br /&gt;
|0x8093&lt;br /&gt;
|0x82a5&lt;br /&gt;
|-&lt;br /&gt;
|playsoundasmaster&lt;br /&gt;
|0x806E&lt;br /&gt;
|0x82af&lt;br /&gt;
|-&lt;br /&gt;
|playsoundtoteam&lt;br /&gt;
|0x8003&lt;br /&gt;
|0x82f3&lt;br /&gt;
|-&lt;br /&gt;
|playsoundtoplayer&lt;br /&gt;
|0x8004&lt;br /&gt;
|0x82f4&lt;br /&gt;
|-&lt;br /&gt;
|playloopsound&lt;br /&gt;
|0x806F&lt;br /&gt;
|0x82b0&lt;br /&gt;
|-&lt;br /&gt;
|getnormalhealth&lt;br /&gt;
|0x8074&lt;br /&gt;
|0x82b5&lt;br /&gt;
|-&lt;br /&gt;
|setnormalhealth&lt;br /&gt;
|0x804C&lt;br /&gt;
|0x82b6&lt;br /&gt;
|-&lt;br /&gt;
|show&lt;br /&gt;
|0x804F&lt;br /&gt;
|0x82b9&lt;br /&gt;
|-&lt;br /&gt;
|hide&lt;br /&gt;
|0x8050&lt;br /&gt;
|0x82ba&lt;br /&gt;
|-&lt;br /&gt;
|playerhide&lt;br /&gt;
|0x8005&lt;br /&gt;
|0x82f5&lt;br /&gt;
|-&lt;br /&gt;
|showtoplayer&lt;br /&gt;
|0x8006&lt;br /&gt;
|0x82f6&lt;br /&gt;
|-&lt;br /&gt;
|enableplayeruse&lt;br /&gt;
|0x8007&lt;br /&gt;
|0x82f7&lt;br /&gt;
|-&lt;br /&gt;
|disableplayeruse&lt;br /&gt;
|0x8008&lt;br /&gt;
|0x82f8&lt;br /&gt;
|-&lt;br /&gt;
|setscriptmoverkillcam&lt;br /&gt;
|0x830A&lt;br /&gt;
|0x830a&lt;br /&gt;
|-&lt;br /&gt;
|makescrambler&lt;br /&gt;
|0x8009&lt;br /&gt;
|0x82f9&lt;br /&gt;
|-&lt;br /&gt;
|makeportableradar&lt;br /&gt;
|0x800A&lt;br /&gt;
|0x82fa&lt;br /&gt;
|-&lt;br /&gt;
|maketrophysystem&lt;br /&gt;
|0x800B&lt;br /&gt;
|0x82fb&lt;br /&gt;
|-&lt;br /&gt;
|setmode&lt;br /&gt;
|0x8060&lt;br /&gt;
|0x82ca&lt;br /&gt;
|-&lt;br /&gt;
|getmode&lt;br /&gt;
|0x8061&lt;br /&gt;
|0x82cb&lt;br /&gt;
|-&lt;br /&gt;
|placespawnpoint&lt;br /&gt;
|0x800C&lt;br /&gt;
|0x82fc&lt;br /&gt;
|-&lt;br /&gt;
|setteamfortrigger&lt;br /&gt;
|0x800D&lt;br /&gt;
|0x82fd&lt;br /&gt;
|-&lt;br /&gt;
|clientclaimtrigger&lt;br /&gt;
|0x800E&lt;br /&gt;
|0x82fe&lt;br /&gt;
|-&lt;br /&gt;
|clientreleasetrigger&lt;br /&gt;
|0x800F&lt;br /&gt;
|0x82ff&lt;br /&gt;
|-&lt;br /&gt;
|releaseclaimedtrigger&lt;br /&gt;
|0x8010&lt;br /&gt;
|0x8300&lt;br /&gt;
|-&lt;br /&gt;
|isusingonlinedataoffline&lt;br /&gt;
|0x8011&lt;br /&gt;
|0x8301&lt;br /&gt;
|-&lt;br /&gt;
|getrestedtime&lt;br /&gt;
|0x8012&lt;br /&gt;
|0x8302&lt;br /&gt;
|-&lt;br /&gt;
|sendleaderboards&lt;br /&gt;
|0x8013&lt;br /&gt;
|0x8303&lt;br /&gt;
|-&lt;br /&gt;
|logstring&lt;br /&gt;
|0x8020&lt;br /&gt;
|0x82ec&lt;br /&gt;
|-&lt;br /&gt;
|isonladder&lt;br /&gt;
|0x8014&lt;br /&gt;
|0x8304&lt;br /&gt;
|-&lt;br /&gt;
|startragdoll&lt;br /&gt;
|0x801E&lt;br /&gt;
|0x82ea&lt;br /&gt;
|-&lt;br /&gt;
|getcorpseanim&lt;br /&gt;
|0x8015&lt;br /&gt;
|0x8305&lt;br /&gt;
|-&lt;br /&gt;
|playerforcedeathanim&lt;br /&gt;
|0x8016&lt;br /&gt;
|0x8306&lt;br /&gt;
|-&lt;br /&gt;
|startac130&lt;br /&gt;
|0x8307&lt;br /&gt;
|0x8307&lt;br /&gt;
|-&lt;br /&gt;
|stopac130&lt;br /&gt;
|0x8308&lt;br /&gt;
|0x8308&lt;br /&gt;
|}&lt;br /&gt;
=== OP_ScriptLocal Calls ===&lt;br /&gt;
These opcodes are used to make local calls to functions or methods in the same script file. After the opcode is a signed 24 bit integer. After casting to a 32 bit integer, it is shifted to the left 8 bits and then to the right 10 bits to get the true offset. For threaded calls (OP_ScriptLocalThreadCall - OP_ScriptLocalMethodChildThreadCall), the parameter count is loaded afterwards as an 8 bit integer.&lt;br /&gt;
=== OP_ScriptFar Calls ===&lt;br /&gt;
These opcodes are used to make far calls to functions or methods in an external script file. During link-time the file name and the function name is used to create the offset. The file name &#039;&#039;&#039;is loaded from the buffer&#039;&#039;&#039; as a 16 bit value. If this value &#039;&#039;&#039;is not&#039;&#039;&#039; equal to zero, then this value is converted to a string, which is the file name. If this value &#039;&#039;&#039;is&#039;&#039;&#039; equal to zero, then a string is loaded afterwards, which is the file name. The function it calls is also loaded &#039;&#039;&#039;in the the buffer&#039;&#039;&#039; as another 16 bit value, and its name is loaded the same way as the file name. After being linked the offset is stored after the opcode as a 24 bit integer. After casting to a 32 bit integer, it is shifted to the left 8 bits and then to the right 10 bits to get the true offset. For threaded calls (OP_ScriptFarThreadCall - OP_ScriptFarMethodChildThreadCall), the parameter count is loaded afterwards as an 8 bit integer.&lt;br /&gt;
=== OP_Script Pointer Calls ===&lt;br /&gt;
These opcodes load a pointer from the stack and simply jump to them. For threaded calls (OP_ScriptThreadCallPointer - OP_ScriptMethodChildThreadCallPointer), the parameter count is loaded afterwards as an 8 bit integer.&lt;br /&gt;
&lt;br /&gt;
== Field IDs ==&lt;br /&gt;
In Ghosts and AW, fields have been sorted alphabetically and were then enumerated. This way, fields starting with the letter a such as &amp;quot;alignx&amp;quot; have got the lowest field ids.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Client Fields&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!rowspan=&amp;quot;2&amp;quot;|Field&lt;br /&gt;
!colspan=&amp;quot;1&amp;quot;|MW3&lt;br /&gt;
!colspan=&amp;quot;1&amp;quot;|AW&lt;br /&gt;
|-&lt;br /&gt;
!PS3 ID&lt;br /&gt;
!PS3 ID&lt;br /&gt;
|-&lt;br /&gt;
| name&lt;br /&gt;
| 0x2D1&lt;br /&gt;
| 0x2AF&lt;br /&gt;
|-&lt;br /&gt;
| sessionteam  &lt;br /&gt;
| 0x2D2&lt;br /&gt;
| 0x3C1&lt;br /&gt;
|-&lt;br /&gt;
| sessionstate&lt;br /&gt;
| 0x2D3&lt;br /&gt;
| 0x3C0&lt;br /&gt;
|-&lt;br /&gt;
| maxhealth&lt;br /&gt;
| 0x2D4&lt;br /&gt;
| 0x279&lt;br /&gt;
|-&lt;br /&gt;
| score&lt;br /&gt;
| 0x2D5&lt;br /&gt;
| 0x394&lt;br /&gt;
|-&lt;br /&gt;
| deaths&lt;br /&gt;
| 0x2D6&lt;br /&gt;
| 0x112&lt;br /&gt;
|-&lt;br /&gt;
| extrascore0&lt;br /&gt;
|&lt;br /&gt;
| 0x16D&lt;br /&gt;
|-&lt;br /&gt;
| extrascore1&lt;br /&gt;
|&lt;br /&gt;
| 0x16E&lt;br /&gt;
|-&lt;br /&gt;
| killstreakcount&lt;br /&gt;
|&lt;br /&gt;
| 0x242&lt;br /&gt;
|-&lt;br /&gt;
| objective&lt;br /&gt;
|&lt;br /&gt;
| 0x2DA&lt;br /&gt;
|-&lt;br /&gt;
| statusicon&lt;br /&gt;
| 0x2D7&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| headicon&lt;br /&gt;
| 0x2D8&lt;br /&gt;
| 0x1E8&lt;br /&gt;
|-&lt;br /&gt;
| headiconteam&lt;br /&gt;
| 0x2D9&lt;br /&gt;
| 0x1E9&lt;br /&gt;
|-&lt;br /&gt;
| kills&lt;br /&gt;
| 0x2DB&lt;br /&gt;
| 0x240&lt;br /&gt;
|-&lt;br /&gt;
| assists&lt;br /&gt;
| 0x2DC&lt;br /&gt;
| 0x53&lt;br /&gt;
|-&lt;br /&gt;
| hasradar&lt;br /&gt;
| 0x2DD&lt;br /&gt;
| 0x1E4&lt;br /&gt;
|-&lt;br /&gt;
| isradarblocked &lt;br /&gt;
| 0x2DE&lt;br /&gt;
| 0x217&lt;br /&gt;
|-&lt;br /&gt;
| radarstrength&lt;br /&gt;
| 0x2DF&lt;br /&gt;
| 0x357&lt;br /&gt;
|-&lt;br /&gt;
| radarshowenemydirection&lt;br /&gt;
| 0x2E0&lt;br /&gt;
| 0x356&lt;br /&gt;
|-&lt;br /&gt;
| radarmode&lt;br /&gt;
| 0x2E1&lt;br /&gt;
| 0x355&lt;br /&gt;
|-&lt;br /&gt;
| enemyradarmode&lt;br /&gt;
|&lt;br /&gt;
| 0x14D&lt;br /&gt;
|-&lt;br /&gt;
| forcespectatorclient&lt;br /&gt;
| 0x2E2&lt;br /&gt;
| 0x19C&lt;br /&gt;
|-&lt;br /&gt;
| killcamentity&lt;br /&gt;
| 0x2E3&lt;br /&gt;
| 0x23E&lt;br /&gt;
|-&lt;br /&gt;
| killcamentitylookat&lt;br /&gt;
| 0x2E4&lt;br /&gt;
| 0x23F&lt;br /&gt;
|-&lt;br /&gt;
| spectatekillcam&lt;br /&gt;
|&lt;br /&gt;
| 0x3E3&lt;br /&gt;
|-&lt;br /&gt;
| archivetime&lt;br /&gt;
| 0x2E5&lt;br /&gt;
| 0x4D&lt;br /&gt;
|-&lt;br /&gt;
| psoffsettime &lt;br /&gt;
| 0x2E6&lt;br /&gt;
| 0x352&lt;br /&gt;
|-&lt;br /&gt;
| pers&lt;br /&gt;
| 0x2E7&lt;br /&gt;
| 0x311&lt;br /&gt;
|-&lt;br /&gt;
| game_extrainfo&lt;br /&gt;
|&lt;br /&gt;
| 0x1B5&lt;br /&gt;
|-&lt;br /&gt;
| playercardpatch&lt;br /&gt;
|&lt;br /&gt;
| 0x325&lt;br /&gt;
|-&lt;br /&gt;
| playercardbackground&lt;br /&gt;
|&lt;br /&gt;
| 0x324&lt;br /&gt;
|}&lt;br /&gt;
&#039;&#039;&#039;Entity Fields&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot;|Field&lt;br /&gt;
! colspan=&amp;quot;1&amp;quot;|MW3&lt;br /&gt;
! colspan=&amp;quot;1&amp;quot;|AW&lt;br /&gt;
|-&lt;br /&gt;
! PS3 ID&lt;br /&gt;
! PS3 ID&lt;br /&gt;
|-&lt;br /&gt;
| code_classname&lt;br /&gt;
| 0x2C3&lt;br /&gt;
| 0xB1&lt;br /&gt;
|-&lt;br /&gt;
| classname&lt;br /&gt;
| 0x2C4&lt;br /&gt;
| 0xAF&lt;br /&gt;
|-&lt;br /&gt;
| origin&lt;br /&gt;
| 0x2C5&lt;br /&gt;
| 0x2EA&lt;br /&gt;
|-&lt;br /&gt;
| model&lt;br /&gt;
| 0x2C6&lt;br /&gt;
| 0x2A4&lt;br /&gt;
|-&lt;br /&gt;
| spawnflags&lt;br /&gt;
| 0x2C7&lt;br /&gt;
| 0x3DF&lt;br /&gt;
|-&lt;br /&gt;
| target&lt;br /&gt;
| 0x2C8&lt;br /&gt;
| 0x4A9&lt;br /&gt;
|-&lt;br /&gt;
| targetname&lt;br /&gt;
| 0x2C9&lt;br /&gt;
| 0x4AB&lt;br /&gt;
|-&lt;br /&gt;
| count&lt;br /&gt;
| 0x2CA&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| health&lt;br /&gt;
| 0x2CB&lt;br /&gt;
| 0x1EB&lt;br /&gt;
|-&lt;br /&gt;
| dmg&lt;br /&gt;
| 0x2CC&lt;br /&gt;
| 0x12A&lt;br /&gt;
|-&lt;br /&gt;
| angles&lt;br /&gt;
| 0x2CD&lt;br /&gt;
| 0x45&lt;br /&gt;
|-&lt;br /&gt;
| birthtime&lt;br /&gt;
| 0x2CE&lt;br /&gt;
| 0x81&lt;br /&gt;
|-&lt;br /&gt;
| script_linkname&lt;br /&gt;
| 0x2CF&lt;br /&gt;
| 0x39D&lt;br /&gt;
|-&lt;br /&gt;
| slidevelocity&lt;br /&gt;
| 0x2D0&lt;br /&gt;
| 0x3D0&lt;br /&gt;
|-&lt;br /&gt;
| owner&lt;br /&gt;
| &lt;br /&gt;
| 0x2ED&lt;br /&gt;
|}&lt;br /&gt;
&#039;&#039;&#039;Vehicle Script Fields&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot;|Field&lt;br /&gt;
! colspan=&amp;quot;1&amp;quot;|MW3&lt;br /&gt;
! colspan=&amp;quot;1&amp;quot;|Ghosts&lt;br /&gt;
! colspan=&amp;quot;1&amp;quot;|AW&lt;br /&gt;
|-&lt;br /&gt;
! PS3 ID&lt;br /&gt;
! PC ID&lt;br /&gt;
! PS3 ID&lt;br /&gt;
|-&lt;br /&gt;
| veh_speed || 0x2FF || 0x2B9 || 0x4FC&lt;br /&gt;
|-&lt;br /&gt;
| veh_pathspeed || 0x300 || 0x2B6 || 0x4F9 &lt;br /&gt;
|-&lt;br /&gt;
| veh_transmission || 0x301 || 0x2BC || 0x4FF &lt;br /&gt;
|-&lt;br /&gt;
| veh_pathdir || 0x302 || 0x2B5 || 0x4F8 &lt;br /&gt;
|-&lt;br /&gt;
| veh_pathtype || 0x303 || 0x2B7 || 0x4FA &lt;br /&gt;
|-&lt;br /&gt;
| veh_topspeed || 0x304 || 0x2BB || 0x4FE &lt;br /&gt;
|-&lt;br /&gt;
| veh_brake || 0x305 || 0x2B0 || 0x4F2 &lt;br /&gt;
|-&lt;br /&gt;
| veh_throttle || 0x306 || 0x2BA || 0x4FD &lt;br /&gt;
|}&lt;br /&gt;
&#039;&#039;&#039;Hudelem Fields&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot;|Field&lt;br /&gt;
! colspan=&amp;quot;1&amp;quot;|MW3&lt;br /&gt;
! colspan=&amp;quot;1&amp;quot;|AW&lt;br /&gt;
|-&lt;br /&gt;
! PS3 ID&lt;br /&gt;
! PS3 ID&lt;br /&gt;
|-&lt;br /&gt;
| x&lt;br /&gt;
| 0x2E8&lt;br /&gt;
| 0x534&lt;br /&gt;
|-&lt;br /&gt;
| y&lt;br /&gt;
| 0x2E9&lt;br /&gt;
| 0x53C&lt;br /&gt;
|-&lt;br /&gt;
| z&lt;br /&gt;
| 0x2EA&lt;br /&gt;
| 0x53F&lt;br /&gt;
|-&lt;br /&gt;
| fontscale&lt;br /&gt;
| 0x2EB&lt;br /&gt;
| 0x190&lt;br /&gt;
|-&lt;br /&gt;
| font&lt;br /&gt;
| 0x2EC&lt;br /&gt;
| 0x18F&lt;br /&gt;
|-&lt;br /&gt;
| alignx&lt;br /&gt;
| 0x2ED&lt;br /&gt;
| 0x30&lt;br /&gt;
|-&lt;br /&gt;
| aligny&lt;br /&gt;
| 0x2EE&lt;br /&gt;
| 0x31&lt;br /&gt;
|-&lt;br /&gt;
| horzalign&lt;br /&gt;
| 0x2EF&lt;br /&gt;
| 0x1F8&lt;br /&gt;
|-&lt;br /&gt;
| vertalign&lt;br /&gt;
| 0x2F0&lt;br /&gt;
| 0x504&lt;br /&gt;
|-&lt;br /&gt;
| color&lt;br /&gt;
| 0x2F1&lt;br /&gt;
| 0xC9&lt;br /&gt;
|-&lt;br /&gt;
| alpha &lt;br /&gt;
| 0x2F2&lt;br /&gt;
| 0x3B&lt;br /&gt;
|-&lt;br /&gt;
| label &lt;br /&gt;
| 0x2F3&lt;br /&gt;
| 0x249&lt;br /&gt;
|-&lt;br /&gt;
| sort &lt;br /&gt;
| 0x2F4&lt;br /&gt;
| 0x3D9&lt;br /&gt;
|-&lt;br /&gt;
| foreground &lt;br /&gt;
| 0x2F5&lt;br /&gt;
| 0x19E&lt;br /&gt;
|-&lt;br /&gt;
| lowresbackground &lt;br /&gt;
| 0x2F6&lt;br /&gt;
| 0x26B&lt;br /&gt;
|-&lt;br /&gt;
| hidewhendead &lt;br /&gt;
| 0x2F7&lt;br /&gt;
| 0x1F0&lt;br /&gt;
|-&lt;br /&gt;
| hidewheninmenu &lt;br /&gt;
| 0x2F8&lt;br /&gt;
| 0x1F2&lt;br /&gt;
|-&lt;br /&gt;
| glowcolor &lt;br /&gt;
| 0x2FA&lt;br /&gt;
| 0x1C4&lt;br /&gt;
|-&lt;br /&gt;
| glowalpha &lt;br /&gt;
| 0x2FB&lt;br /&gt;
| 0x8C&lt;br /&gt;
|-&lt;br /&gt;
| archived &lt;br /&gt;
| 0x2FC&lt;br /&gt;
| 0x4C&lt;br /&gt;
|-&lt;br /&gt;
| showinkillcam&lt;br /&gt;
|&lt;br /&gt;
| 0x3C8&lt;br /&gt;
|-&lt;br /&gt;
| hidein3rdperson &lt;br /&gt;
| 0x2FD&lt;br /&gt;
| 0x1EF&lt;br /&gt;
|-&lt;br /&gt;
| positioninworld&lt;br /&gt;
|&lt;br /&gt;
| 0x333&lt;br /&gt;
|-&lt;br /&gt;
| hidewhenindemo &lt;br /&gt;
| 0x2FE&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| enablehudlighting&lt;br /&gt;
|&lt;br /&gt;
| 0x140&lt;br /&gt;
|}&lt;br /&gt;
&#039;&#039;&#039;Vehicle Node Fields&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!rowspan=&amp;quot;2&amp;quot;|Field&lt;br /&gt;
!colspan=&amp;quot;1&amp;quot;|MW3&lt;br /&gt;
!colspan=&amp;quot;1&amp;quot;|AW&lt;br /&gt;
|-&lt;br /&gt;
!PS3 ID&lt;br /&gt;
!PS3 ID&lt;br /&gt;
|-&lt;br /&gt;
| targetname&lt;br /&gt;
| 0x2C9&lt;br /&gt;
| 0x4AB&lt;br /&gt;
|-&lt;br /&gt;
| target&lt;br /&gt;
| 0x2C8&lt;br /&gt;
| 0x4A9&lt;br /&gt;
|-&lt;br /&gt;
| script_linkname&lt;br /&gt;
| 0x2CF&lt;br /&gt;
| 0x39D&lt;br /&gt;
|-&lt;br /&gt;
| script_noteworthy&lt;br /&gt;
| 0x307&lt;br /&gt;
| 0x39F&lt;br /&gt;
|-&lt;br /&gt;
| origin&lt;br /&gt;
| 0x2C5&lt;br /&gt;
| 0x2EA&lt;br /&gt;
|-&lt;br /&gt;
| angles&lt;br /&gt;
| 0x2CD&lt;br /&gt;
| 0x45&lt;br /&gt;
|-&lt;br /&gt;
| speed&lt;br /&gt;
| 0x308&lt;br /&gt;
| 0x3E7&lt;br /&gt;
|-&lt;br /&gt;
| lookahead&lt;br /&gt;
|  0x309&lt;br /&gt;
| 0x25F&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Therifboy</name></author>
	</entry>
	<entry>
		<id>https://codresearch.dev/index.php?title=ScriptFile_Asset&amp;diff=840</id>
		<title>ScriptFile Asset</title>
		<link rel="alternate" type="text/html" href="https://codresearch.dev/index.php?title=ScriptFile_Asset&amp;diff=840"/>
		<updated>2015-01-27T19:40:06Z</updated>

		<summary type="html">&lt;p&gt;Therifboy: /* OP_AddArray */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
[[Category:Assets]]&lt;br /&gt;
[[Category:MW3]]&lt;br /&gt;
[[Category:Ghosts]]&lt;br /&gt;
The scriptfile asset is used on Modern Warfare 3, Ghosts, and Advanced Warfare. It is Infinity Ward&#039;s attempt at protecting their game scripts from being modified. Compared to Treyarch&#039;s scriptparsetree, the scriptfile gives away less information on identifying which game script file it originated from. All unnecessary strings have been removed and file names have even been renamed as number id&#039;s.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
struct ScriptFile&lt;br /&gt;
{&lt;br /&gt;
  const char *name;&lt;br /&gt;
  int compressedLen;&lt;br /&gt;
  int len;&lt;br /&gt;
  int bytecodeLen;&lt;br /&gt;
  const char *buffer;&lt;br /&gt;
  char *bytecode;&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
=== Buffer ===&lt;br /&gt;
The buffer is a zlib compressed section in which the compressed size is equal to compressedLen and it&#039;s uncompressed size is equal to len.&lt;br /&gt;
&lt;br /&gt;
This section of data is not needed during runtime. Before being executed, the linker runs through the bytecode once and links the buffer and bytecode section together so that all programs can be ran as one. It contains strings and function call info.&lt;br /&gt;
&lt;br /&gt;
In order to be linked correctly, the buffer and bytecode section must be read synchronously (e.g. when reading the OP_GetString opcode, the buffer pointer must be pointing to the string ready to be loaded). The linker does this by incrementing the buffer pointer each time it reads an opcode that uses it.&lt;br /&gt;
&lt;br /&gt;
At the beginning of each function, the linker loads a 32 bit value, which is the length of the function in the program section. Then it loads a 16 bit value which is the function id. If the id is equal to zero, then it will load a string after it, which is the name of the function. After this, the opcodes may begin to use the data section. The opcodes that use the data section are OP_GetAnimTree, OP_GetString, OP_GetIString, OP_GetAnimation, OP_GetFarFunction, OP_EvalLevelFieldVariable, OP_EvalAnimFieldVariable, OP_EvalSelfFieldVariable, OP_EvalFieldVariable, OP_EvalLevelFieldVariableRef, OP_EvalAnimFieldVariableRef, OP_EvalSelfFieldVariableRef, OP_EvalFieldVariableRef, OP_ClearFieldVariable, OP_SetLevelFieldVariableField, OP_SetSelfFieldVariableField, all the far call opcodes, and OP_endswitch.&lt;br /&gt;
&lt;br /&gt;
=== Byte Code ===&lt;br /&gt;
The byte is the actual compiled game script code.&lt;br /&gt;
&lt;br /&gt;
== Operation Codes ==&lt;br /&gt;
=== Modern Warfare 3 ===&lt;br /&gt;
==== XBOX &amp;amp; PS3 ====&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#define OP_End					0&lt;br /&gt;
#define OP_Return				1&lt;br /&gt;
#define OP_GetUndefined			2&lt;br /&gt;
#define OP_GetZero				3&lt;br /&gt;
#define OP_GetByte				4&lt;br /&gt;
#define OP_GetAnimTree				5&lt;br /&gt;
#define OP_GetNegByte			6&lt;br /&gt;
#define OP_GetUnsignedShort		7&lt;br /&gt;
#define OP_GetNegUnsignedShort	8&lt;br /&gt;
#define OP_GetInteger			9&lt;br /&gt;
#define OP_GetBuiltinFunction			0xA&lt;br /&gt;
#define OP_GetBuiltinMethod			0xB&lt;br /&gt;
#define OP_GetFloat				0xC&lt;br /&gt;
#define OP_GetString			0xD&lt;br /&gt;
#define OP_GetIString			0xE&lt;br /&gt;
#define OP_GetVector			0xF&lt;br /&gt;
#define OP_GetLevelObject		0x10&lt;br /&gt;
#define OP_GetAnimObject		0x11&lt;br /&gt;
#define OP_GetSelf				0x12&lt;br /&gt;
#define OP_GetThisthread			0x13&lt;br /&gt;
#define OP_GetLevel				0x14&lt;br /&gt;
#define OP_GetGame				0x15&lt;br /&gt;
#define OP_GetAnim				0x16&lt;br /&gt;
#define OP_GetAnimation			0x17&lt;br /&gt;
#define OP_GetGameRef			0x18&lt;br /&gt;
#define OP_GetLocalFunction			0x19&lt;br /&gt;
#define OP_GetFarFunction			0x1A&lt;br /&gt;
#define OP_CreateLocalVariable	0x1B&lt;br /&gt;
#define OP_RemoveLocalVariables	0x1C&lt;br /&gt;
#define OP_EvalLocalVariableCached0		0x1D&lt;br /&gt;
#define OP_EvalLocalVariableCached1		0x1E&lt;br /&gt;
#define OP_EvalLocalVariableCached2		0x1F&lt;br /&gt;
#define OP_EvalLocalVariableCached3		0x20&lt;br /&gt;
#define OP_EvalLocalVariableCached4		0x21&lt;br /&gt;
#define OP_EvalLocalVariableCached5		0x22&lt;br /&gt;
#define OP_EvalLocalVariableCached		0x23&lt;br /&gt;
#define OP_EvalLocalArrayCached			0x24&lt;br /&gt;
#define OP_EvalArray				0x25&lt;br /&gt;
#define OP_EvalLocalArrayRefCached0		0x26&lt;br /&gt;
#define OP_EvalNewLocalArrayRefCached0       	0x27&lt;br /&gt;
#define OP_EvalLocalArrayRefCached		0x28&lt;br /&gt;
#define OP_EvalArrayRef				0x29&lt;br /&gt;
#define OP_ClearArray				0x2A&lt;br /&gt;
#define OP_EmptyArray				0x2B&lt;br /&gt;
#define OP_AddArray				0x2C&lt;br /&gt;
#define OP_GetSelfObject			0x2D&lt;br /&gt;
#define OP_EvalLevelFieldVariable	0x2E&lt;br /&gt;
#define OP_EvalAnimFieldVariable	0x2F&lt;br /&gt;
#define OP_EvalSelfFieldVariable	0x30&lt;br /&gt;
#define OP_EvalFieldVariable		0x31&lt;br /&gt;
#define OP_EvalLevelFieldVariableRef 	0x32&lt;br /&gt;
#define OP_EvalAnimFieldVariableRef		0x33&lt;br /&gt;
#define OP_EvalSelfFieldVariableRef		0x34&lt;br /&gt;
#define OP_EvalFieldVariableRef			0x35&lt;br /&gt;
#define OP_ClearFieldVariable			0x36&lt;br /&gt;
#define OP_SafeCreateVariableFieldCached	0x37&lt;br /&gt;
#define OP_SafeSetVariableFieldCached0		0x38&lt;br /&gt;
#define OP_SafeSetVariableFieldCached		0x39&lt;br /&gt;
#define OP_SafeSetWaittillVariableFieldCached	0x3A&lt;br /&gt;
#define OP_clearparams				0x3B&lt;br /&gt;
#define OP_checkclearparams			0x3C&lt;br /&gt;
#define OP_EvalLocalVariableRefCached0				0x3D&lt;br /&gt;
#define OP_EvalNewLocalVariableRefCached0			0x3E	// nop&lt;br /&gt;
#define OP_EvalLocalVariableRefCached	0x3F&lt;br /&gt;
#define OP_SetLevelFieldVariableField	0x40&lt;br /&gt;
#define OP_SetVariableField		0x41&lt;br /&gt;
#define OP_ClearVariableField			0x42	// nop&lt;br /&gt;
#define OP_SetAnimFieldVariableField	0x43&lt;br /&gt;
#define OP_SetSelfFieldVariableField	0x44&lt;br /&gt;
#define OP_SetLocalVariableFieldCached0		0x45&lt;br /&gt;
#define OP_SetNewLocalVariableFieldCached0		0x46&lt;br /&gt;
#define OP_SetLocalVariableFieldCached		0x47&lt;br /&gt;
#define OP_ClearLocalVariableFieldCached		0x48&lt;br /&gt;
#define OP_ClearLocalVariableFieldCached0		0x49&lt;br /&gt;
#define OP_CallBuiltin0		0x4A&lt;br /&gt;
#define OP_CallBuiltin1		0x4B&lt;br /&gt;
#define OP_CallBuiltin2		0x4C&lt;br /&gt;
#define OP_CallBuiltin3		0x4D&lt;br /&gt;
#define OP_CallBuiltin4		0x4E&lt;br /&gt;
#define OP_CallBuiltin5		0x4F&lt;br /&gt;
#define OP_CallBuiltin		0x50&lt;br /&gt;
#define OP_CallBuiltinMethod0	0x51&lt;br /&gt;
#define OP_CallBuiltinMethod1	0x52&lt;br /&gt;
#define OP_CallBuiltinMethod2	0x53&lt;br /&gt;
#define OP_CallBuiltinMethod3	0x54&lt;br /&gt;
#define OP_CallBuiltinMethod4	0x55&lt;br /&gt;
#define OP_CallBuiltinMethod5	0x56&lt;br /&gt;
#define OP_CallBuiltinMethod	0x57&lt;br /&gt;
#define OP_wait					0x58&lt;br /&gt;
#define OP_waittillFrameEnd		0x59&lt;br /&gt;
#define OP_PreScriptCall		0x5A&lt;br /&gt;
#define OP_ScriptLocalFunctionCall2	0x5B&lt;br /&gt;
#define OP_ScriptLocalFunctionCall	0x5C&lt;br /&gt;
#define OP_ScriptLocalMethodCall	0x5D&lt;br /&gt;
#define OP_ScriptLocalThreadCall			0x5E&lt;br /&gt;
#define OP_ScriptLocalChildThreadCall	0x5F&lt;br /&gt;
#define OP_ScriptLocalMethodThreadCall			0x60&lt;br /&gt;
#define OP_ScriptLocalMethodChildThreadCall			0x61&lt;br /&gt;
#define OP_ScriptFarFunctionCall2		0x62&lt;br /&gt;
#define OP_ScriptFarFunctionCall		0x63&lt;br /&gt;
#define OP_ScriptFarMethodCall	0x64&lt;br /&gt;
#define OP_ScriptFarThreadCall				0x65&lt;br /&gt;
#define OP_ScriptFarChildThreadCall		0x66&lt;br /&gt;
#define OP_ScriptFarMethodThreadCall			0x67&lt;br /&gt;
#define OP_ScriptFarMethodChildThreadCall			0x68&lt;br /&gt;
#define OP_ScriptFunctionCallPointer			0x69&lt;br /&gt;
#define OP_ScriptMethodCallPointer			0x6A&lt;br /&gt;
#define OP_ScriptThreadCallPointer			0x6B&lt;br /&gt;
#define OP_ScriptMethodChildThreadCallPointer			0x6C&lt;br /&gt;
#define OP_ScriptMethodThreadCallPointer			0x6D&lt;br /&gt;
#define OP_ScriptMethodChildThreadCallPointer			0x6E&lt;br /&gt;
#define OP_CallBuiltinPointer			0x6F&lt;br /&gt;
#define OP_CallBuiltinMethodPointer			0x70&lt;br /&gt;
#define OP_DecTop			0x71&lt;br /&gt;
#define OP_CastFieldObject			0x72&lt;br /&gt;
#define OP_EvalLocalVariableObjectCached			0x73&lt;br /&gt;
#define OP_CastBool			0x74&lt;br /&gt;
#define OP_BoolNot				0x75&lt;br /&gt;
#define OP_BoolComplement		0x76&lt;br /&gt;
#define OP_JumpOnFalse			0x77&lt;br /&gt;
#define OP_JumpOnTrue			0x78&lt;br /&gt;
#define OP_JumpOnFalseExpr		0x79&lt;br /&gt;
#define OP_JumpOnTrueExpr		0x7A&lt;br /&gt;
#define OP_jump				0x7B&lt;br /&gt;
#define OP_jumpback			0x7C&lt;br /&gt;
#define OP_inc				0x7D&lt;br /&gt;
#define OP_dec				0x7E&lt;br /&gt;
#define OP_bit_or			0x7F&lt;br /&gt;
#define OP_bit_ex_or		0x80&lt;br /&gt;
#define OP_bit_and			0x81&lt;br /&gt;
#define OP_equality			0x82&lt;br /&gt;
#define OP_inequality		0x83&lt;br /&gt;
#define OP_less				0x84&lt;br /&gt;
#define OP_greater			0x85&lt;br /&gt;
#define OP_less_equal		0x86&lt;br /&gt;
#define OP_greater_equal	0x87&lt;br /&gt;
#define OP_shift_left		0x88&lt;br /&gt;
#define OP_shift_right		0x89&lt;br /&gt;
#define OP_plus				0x8A&lt;br /&gt;
#define OP_minus			0x8B&lt;br /&gt;
#define OP_multiply			0x8C&lt;br /&gt;
#define OP_divide			0x8F&lt;br /&gt;
#define OP_mod				0x8E&lt;br /&gt;
#define OP_size				0x8F&lt;br /&gt;
#define OP_waittillmatch		0x90&lt;br /&gt;
#define OP_waittillmatch2		0x91 // nop&lt;br /&gt;
#define OP_waittill			0x92&lt;br /&gt;
#define OP_notify			0x93&lt;br /&gt;
#define OP_endon			0x94&lt;br /&gt;
#define OP_voidCodepos		0x95&lt;br /&gt;
#define OP_switch			0x96&lt;br /&gt;
#define OP_endswitch		0x97&lt;br /&gt;
#define OP_vector			0x98&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== PC ====&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#define OP_End	0x0&lt;br /&gt;
#define OP_Return	0x1&lt;br /&gt;
#define OP_GetByte	0x2&lt;br /&gt;
#define OP_GetNegByte	0x3&lt;br /&gt;
#define OP_GetUnsignedShort	0x4&lt;br /&gt;
#define OP_GetNegUnsignedShort	0x5&lt;br /&gt;
#define OP_GetInteger	0x6&lt;br /&gt;
#define OP_GetBuiltinFunction	0x7&lt;br /&gt;
#define OP_GetBuiltinMethod	0x8&lt;br /&gt;
#define OP_GetFloat	0x9&lt;br /&gt;
#define OP_GetString	0xA&lt;br /&gt;
#define OP_GetUndefined	0xB&lt;br /&gt;
#define OP_GetZero	0xC&lt;br /&gt;
#define OP_waittillFrameEnd		0xD&lt;br /&gt;
#define OP_CreateLocalVariable	0xE&lt;br /&gt;
#define OP_RemoveLocalVariables	0xF&lt;br /&gt;
#define OP_EvalLocalVariableCached0	0x10&lt;br /&gt;
#define OP_EvalLocalVariableCached1	0x11&lt;br /&gt;
#define OP_EvalLocalVariableCached2	0x12&lt;br /&gt;
#define OP_EvalLocalVariableCached3	0x13&lt;br /&gt;
#define OP_EvalLocalVariableCached4	0x14&lt;br /&gt;
#define OP_EvalLocalVariableCached5	0x15&lt;br /&gt;
#define OP_EvalLocalVariableCached	0x16&lt;br /&gt;
#define OP_EvalLocalArrayCached	0x17&lt;br /&gt;
#define OP_EvalArray	0x18&lt;br /&gt;
#define OP_EvalNewLocalArrayRefCached0	0x19&lt;br /&gt;
#define OP_EvalLocalArrayRefCached0	0x1A&lt;br /&gt;
#define OP_EvalLocalArrayRefCached	0x1B&lt;br /&gt;
#define OP_EvalArrayRef	0x1C&lt;br /&gt;
#define OP_ClearArray	0x1D&lt;br /&gt;
#define OP_EmptyArray	0x1E&lt;br /&gt;
#define OP_AddArray	0x1F&lt;br /&gt;
#define OP_PreScriptCall	0x20&lt;br /&gt;
#define OP_ScriptLocalFunctionCall2	0x21&lt;br /&gt;
#define OP_ScriptLocalFunctionCall	0x22&lt;br /&gt;
#define OP_ScriptLocalMethodCall	0x23&lt;br /&gt;
#define OP_ScriptLocalThreadCall	0x24&lt;br /&gt;
#define OP_ScriptLocalChildThreadCall	0x25&lt;br /&gt;
#define OP_ScriptLocalMethodThreadCall	0x26&lt;br /&gt;
#define OP_ScriptLocalMethodChildThreadCall	0x27&lt;br /&gt;
#define OP_ScriptFarFunctionCall2	0x28&lt;br /&gt;
#define OP_ScriptFarFunctionCall	0x29&lt;br /&gt;
#define OP_ScriptFarMethodCall	0x2A&lt;br /&gt;
#define OP_ScriptFarThreadCall	0x2B&lt;br /&gt;
#define OP_ScriptFarChildThreadCall	0x2C&lt;br /&gt;
#define OP_ScriptFarMethodThreadCall	0x2D&lt;br /&gt;
#define OP_ScriptFarMethodChildThreadCall	0x2E&lt;br /&gt;
#define OP_ScriptFunctionCallPointer	0x2F&lt;br /&gt;
#define OP_ScriptMethodCallPointer		0x30&lt;br /&gt;
#define OP_ScriptThreadCallPointer		0x31&lt;br /&gt;
#define OP_ScriptMethodChildThreadCallPointer					0x32&lt;br /&gt;
#define OP_ScriptMethodThreadCallPointer	0x33&lt;br /&gt;
#define OP_ScriptMethodChildThreadCallPointer	0x34&lt;br /&gt;
#define OP_CallBuiltinPointer	0x35&lt;br /&gt;
#define OP_CallBuiltinMethodPointer	0x36&lt;br /&gt;
#define OP_GetIString	0x37&lt;br /&gt;
#define OP_GetVector	0x38&lt;br /&gt;
#define OP_GetLevelObject	0x39&lt;br /&gt;
#define OP_GetAnimObject	0x3A&lt;br /&gt;
#define OP_GetSelf	0x3B&lt;br /&gt;
#define OP_GetThisthread	0x3C&lt;br /&gt;
#define OP_GetLevel	0x3D&lt;br /&gt;
#define OP_GetGame	0x3E&lt;br /&gt;
#define OP_GetAnim	0x3F&lt;br /&gt;
#define OP_GetAnimation	0x40&lt;br /&gt;
#define OP_GetGameRef	0x41&lt;br /&gt;
#define OP_inc	0x42&lt;br /&gt;
#define OP_dec	0x43&lt;br /&gt;
#define OP_bit_or	0x44&lt;br /&gt;
#define OP_JumpOnFalseExpr	0x45&lt;br /&gt;
#define OP_bit_ex_or	0x46&lt;br /&gt;
#define OP_bit_and	0x47&lt;br /&gt;
#define OP_equality	0x48&lt;br /&gt;
#define OP_inequality	0x49&lt;br /&gt;
#define OP_less	0x4A&lt;br /&gt;
#define OP_greater	0x4B&lt;br /&gt;
#define OP_JumpOnTrueExpr	0x4C&lt;br /&gt;
#define OP_less_equal	0x4D&lt;br /&gt;
#define OP_jumpback	0x4E&lt;br /&gt;
#define OP_waittillmatch2	0x4F // nop&lt;br /&gt;
#define OP_waittill	0x50&lt;br /&gt;
#define OP_notify	0x51&lt;br /&gt;
#define OP_endon	0x52&lt;br /&gt;
#define OP_voidCodepos	0x53&lt;br /&gt;
#define OP_switch	0x54&lt;br /&gt;
#define OP_endswitch	0x55&lt;br /&gt;
#define OP_vector	0x56&lt;br /&gt;
#define OP_JumpOnFalse	0x57&lt;br /&gt;
#define OP_greater_equal	0x58&lt;br /&gt;
#define OP_shift_left	0x59&lt;br /&gt;
#define OP_shift_right	0x5A&lt;br /&gt;
#define OP_plus	0x5B&lt;br /&gt;
#define OP_jump	0x5C&lt;br /&gt;
#define OP_minus	0x5D&lt;br /&gt;
#define OP_multiply	0x5E&lt;br /&gt;
#define OP_divide	0x5F&lt;br /&gt;
#define OP_mod	0x60&lt;br /&gt;
#define OP_JumpOnTrue	0x61&lt;br /&gt;
#define OP_size	0x62&lt;br /&gt;
#define OP_waittillmatch	0x63&lt;br /&gt;
#define OP_GetLocalFunction	0x64&lt;br /&gt;
#define OP_GetFarFunction	0x65&lt;br /&gt;
#define OP_GetSelfObject	0x66&lt;br /&gt;
#define OP_EvalLevelFieldVariable	0x67&lt;br /&gt;
#define OP_EvalAnimFieldVariable	0x68&lt;br /&gt;
#define OP_EvalSelfFieldVariable	0x69&lt;br /&gt;
#define OP_EvalFieldVariable	0x6A&lt;br /&gt;
#define OP_EvalLevelFieldVariableRef	0x6B&lt;br /&gt;
#define OP_EvalAnimFieldVariableRef	0x6C&lt;br /&gt;
#define OP_EvalSelfFieldVariableRef	0x6D&lt;br /&gt;
#define OP_EvalFieldVariableRef	0x6E&lt;br /&gt;
#define OP_ClearFieldVariable	0x6F&lt;br /&gt;
#define OP_SafeCreateVariableFieldCached	0x70&lt;br /&gt;
#define OP_SafeSetVariableFieldCached0	0x71&lt;br /&gt;
#define OP_SafeSetVariableFieldCached		0x72&lt;br /&gt;
#define OP_SafeSetWaittillVariableFieldCached	0x73&lt;br /&gt;
#define OP_GetAnimTree	0x74&lt;br /&gt;
#define OP_clearparams	0x75&lt;br /&gt;
#define OP_checkclearparams				0x76&lt;br /&gt;
#define OP_EvalLocalVariableRefCached0	0x77&lt;br /&gt;
#define OP_EvalNewLocalVariableRefCached0	0x78 // nop&lt;br /&gt;
#define OP_EvalLocalVariableRefCached	0x79&lt;br /&gt;
#define OP_SetLevelFieldVariableField	0x7A&lt;br /&gt;
#define OP_SetVariableField				0x7B&lt;br /&gt;
#define OP_ClearVariableField		0x7C // nop&lt;br /&gt;
#define OP_SetAnimFieldVariableField	0x7D&lt;br /&gt;
#define OP_SetSelfFieldVariableField	0x7E&lt;br /&gt;
#define OP_SetLocalVariableFieldCached0	0x7F&lt;br /&gt;
#define OP_SetNewLocalVariableFieldCached0		0x80&lt;br /&gt;
#define OP_SetLocalVariableFieldCached	0x81&lt;br /&gt;
#define OP_ClearLocalVariableFieldCached		0x82&lt;br /&gt;
#define OP_ClearLocalVariableFieldCached0		0x83&lt;br /&gt;
#define OP_CallBuiltin0	0x84&lt;br /&gt;
#define OP_CallBuiltin1	0x85&lt;br /&gt;
#define OP_CallBuiltin2	0x86&lt;br /&gt;
#define OP_CallBuiltin3	0x87&lt;br /&gt;
#define OP_CallBuiltin4	0x88&lt;br /&gt;
#define OP_CallBuiltin5	0x89&lt;br /&gt;
#define OP_CallBuiltin	0x8A&lt;br /&gt;
#define OP_CallBuiltinMethod0	0x8B&lt;br /&gt;
#define OP_CallBuiltinMethod1	0x8C&lt;br /&gt;
#define OP_CallBuiltinMethod2	0x8D&lt;br /&gt;
#define OP_CallBuiltinMethod3	0x8E&lt;br /&gt;
#define OP_CallBuiltinMethod4	0x8F&lt;br /&gt;
#define OP_CallBuiltinMethod5	0x90&lt;br /&gt;
#define OP_CallBuiltinMethod	0x91&lt;br /&gt;
#define OP_wait		0x92&lt;br /&gt;
#define OP_DecTop	0x93&lt;br /&gt;
#define OP_CastFieldObject	0x94&lt;br /&gt;
#define OP_EvalLocalVariableObjectCached 0x95&lt;br /&gt;
#define OP_CastBool	0x96&lt;br /&gt;
#define OP_BoolNot	0x97&lt;br /&gt;
#define OP_BoolComplement 0x98&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Ghosts ===&lt;br /&gt;
The opcodes for Ghosts do the exact same thing as the Modern Warfare 3 opcodes, only their values seem to be scrambled in some way.&lt;br /&gt;
==== XBOX &amp;amp; PS3 ====&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#define OP_CastFieldObject			0x1D&lt;br /&gt;
#define OP_SetLocalVariableFieldCached	0x1E&lt;br /&gt;
#define OP_plus				0x1F&lt;br /&gt;
#define OP_RemoveLocalVariables		0x20&lt;br /&gt;
#define OP_EvalSelfFieldVariableRef	0x21&lt;br /&gt;
#define OP_ScriptFarMethodChildThreadCall	0x22&lt;br /&gt;
#define OP_GetGameRef			0x23&lt;br /&gt;
#define OP_EvalAnimFieldVariable	0x24&lt;br /&gt;
#define OP_EvalLevelFieldVariableRef	0x25&lt;br /&gt;
#define OP_GetThisthread		0x26&lt;br /&gt;
#define OP_greater		0x27&lt;br /&gt;
#define OP_waittillmatch	0x28&lt;br /&gt;
#define OP_shift_right		0x29&lt;br /&gt;
#define OP_dec			0x2A&lt;br /&gt;
#define OP_JumpOnTrue	0x2B&lt;br /&gt;
#define OP_bit_or	0x2C&lt;br /&gt;
#define OP_equality	0x2D&lt;br /&gt;
#define OP_ClearLocalVariableFieldCached0	0x2E&lt;br /&gt;
#define OP_notify	0x2F&lt;br /&gt;
#define OP_GetVector	0x30&lt;br /&gt;
#define OP_ScriptMethodChildThreadCallPointer	0x31&lt;br /&gt;
#define OP_voidCodepos	0x32&lt;br /&gt;
#define OP_GetByte	0x33&lt;br /&gt;
#define OP_ScriptFarMethodThreadCall		0x34&lt;br /&gt;
#define OP_SetSelfFieldVariableField	0x35&lt;br /&gt;
#define OP_JumpOnFalseExpr		0x36&lt;br /&gt;
#define OP_GetUndefined		0x37&lt;br /&gt;
#define OP_jumpback		0x38&lt;br /&gt;
#define OP_JumpOnTrueExpr	0x39&lt;br /&gt;
#define OP_CallBuiltin0		0x3A&lt;br /&gt;
#define OP_CallBuiltin1		0x3B&lt;br /&gt;
#define OP_CallBuiltin2		0x3C&lt;br /&gt;
#define OP_CallBuiltin3		0x3D&lt;br /&gt;
#define OP_CallBuiltin4		0x3E&lt;br /&gt;
#define OP_CallBuiltin5		0x3F&lt;br /&gt;
#define OP_CallBuiltin		0x40&lt;br /&gt;
#define OP_SetLocalVariableFieldCached0		0x41&lt;br /&gt;
#define OP_ClearFieldVariable	0x42&lt;br /&gt;
#define OP_GetLevel		0x43&lt;br /&gt;
#define OP_size			0x44&lt;br /&gt;
#define OP_SafeSetWaittillVariableFieldCached	0x45&lt;br /&gt;
#define OP_ScriptLocalThreadCall			0x46&lt;br /&gt;
#define OP_AddArray			0x47&lt;br /&gt;
#define OP_endon			0x48&lt;br /&gt;
#define OP_EvalFieldVariable		0x49&lt;br /&gt;
#define OP_shift_left			0x4A&lt;br /&gt;
#define OP_EvalLocalArrayRefCached0	0x4B&lt;br /&gt;
#define OP_Return			0x4C&lt;br /&gt;
#define OP_CreateLocalVariable		0x4D&lt;br /&gt;
#define OP_SafeSetVariableFieldCached0	0x4E&lt;br /&gt;
#define OP_GetBuiltinFunction		0x4F&lt;br /&gt;
#define OP_ScriptLocalMethodCall	0x50&lt;br /&gt;
#define OP_CallBuiltinMethodPointer			0x51&lt;br /&gt;
#define OP_ScriptLocalChildThreadCall		0x52&lt;br /&gt;
#define OP_GetSelfObject		0x53&lt;br /&gt;
#define OP_GetGame			0x54&lt;br /&gt;
#define OP_SetLevelFieldVariableField	0x55&lt;br /&gt;
#define OP_EvalArray			0x56&lt;br /&gt;
#define OP_GetSelf			0x57&lt;br /&gt;
#define OP_End				0x58&lt;br /&gt;
#define OP_EvalSelfFieldVariable	0x59&lt;br /&gt;
#define OP_less_equal			0x5A&lt;br /&gt;
#define OP_EvalLocalVariableCached0	0x5B&lt;br /&gt;
#define OP_EvalLocalVariableCached1	0x5C&lt;br /&gt;
#define OP_EvalLocalVariableCached2	0x5D&lt;br /&gt;
#define OP_EvalLocalVariableCached3	0x5E&lt;br /&gt;
#define OP_EvalLocalVariableCached4	0x5F&lt;br /&gt;
#define OP_EvalLocalVariableCached5	0x60&lt;br /&gt;
#define OP_EvalLocalVariableCached	0x61&lt;br /&gt;
#define OP_EvalNewLocalArrayRefCached0		0x62&lt;br /&gt;
#define OP_ScriptMethodChildThreadCallPointer		0x63&lt;br /&gt;
#define OP_EvalLocalVariableObjectCached		0x64&lt;br /&gt;
#define OP_ScriptLocalMethodThreadCall	0x65&lt;br /&gt;
#define OP_GetInteger		0x66&lt;br /&gt;
#define OP_ScriptMethodCallPointer		0x67&lt;br /&gt;
#define OP_checkclearparams	0x68&lt;br /&gt;
#define OP_SetAnimFieldVariableField	0x69&lt;br /&gt;
// nop&lt;br /&gt;
#define OP_minus  0x6B&lt;br /&gt;
#define OP_ScriptLocalFunctionCall2 0x6C&lt;br /&gt;
#define OP_GetNegUnsignedShort 0x6D&lt;br /&gt;
#define OP_GetNegByte		0x6E&lt;br /&gt;
#define OP_SafeCreateVariableFieldCached	0x6F&lt;br /&gt;
#define OP_greater_equal	0x70&lt;br /&gt;
#define OP_vector		0x71&lt;br /&gt;
#define OP_GetBuiltinMethod	0x72&lt;br /&gt;
#define OP_endswitch	0x73&lt;br /&gt;
#define OP_ClearArray	0x74&lt;br /&gt;
#define OP_DecTop	0x75&lt;br /&gt;
#define OP_CastBool	0x76&lt;br /&gt;
#define OP_EvalArrayRef	0x77&lt;br /&gt;
#define OP_SetNewLocalVariableFieldCached0		0x78&lt;br /&gt;
#define OP_GetZero			0x79&lt;br /&gt;
#define OP_wait				0x7A&lt;br /&gt;
#define OP_waittill			0x7B&lt;br /&gt;
#define OP_GetIString			0x7C&lt;br /&gt;
#define OP_ScriptFarFunctionCall	0x7D&lt;br /&gt;
#define OP_GetAnimObject		0x7E&lt;br /&gt;
#define OP_GetAnimTree			0x7F&lt;br /&gt;
#define OP_EvalLocalArrayCached		0x80&lt;br /&gt;
#define OP_mod				0x81&lt;br /&gt;
#define OP_ScriptFarThreadCall		0x82&lt;br /&gt;
#define OP_GetUnsignedShort		0x83&lt;br /&gt;
#define OP_clearparams		0x84&lt;br /&gt;
#define OP_ScriptMethodThreadCallPointer		0x85&lt;br /&gt;
#define OP_ScriptFunctionCallPointer		0x86&lt;br /&gt;
#define OP_EmptyArray		0x87&lt;br /&gt;
#define OP_SafeSetVariableFieldCached	0x88&lt;br /&gt;
// nop&lt;br /&gt;
#define OP_EvalFieldVariableRef		0x8A&lt;br /&gt;
#define OP_ScriptLocalMethodChildThreadCall	0x8B&lt;br /&gt;
// nop&lt;br /&gt;
#define OP_GetFloat			0x8D&lt;br /&gt;
#define OP_EvalLocalVariableRefCached	0x8E&lt;br /&gt;
#define OP_JumpOnFalse			0x8F&lt;br /&gt;
#define OP_BoolComplement		0x90&lt;br /&gt;
#define OP_ScriptThreadCallPointer			0x91&lt;br /&gt;
#define OP_ScriptFarFunctionCall2	0x92&lt;br /&gt;
#define OP_less				0x93&lt;br /&gt;
#define OP_BoolNot			0x94&lt;br /&gt;
#define OP_waittillFrameEnd		0x95&lt;br /&gt;
#define OP_GetString			0x96&lt;br /&gt;
#define OP_EvalLevelFieldVariable	0x97&lt;br /&gt;
#define OP_GetLevelObject	0x98&lt;br /&gt;
#define OP_inc			0x99&lt;br /&gt;
#define OP_CallBuiltinMethod0	0x9A&lt;br /&gt;
#define OP_CallBuiltinMethod1	0x9B&lt;br /&gt;
#define OP_CallBuiltinMethod2	0x9C&lt;br /&gt;
#define OP_CallBuiltinMethod3	0x9D&lt;br /&gt;
#define OP_CallBuiltinMethod4	0x9E&lt;br /&gt;
#define OP_CallBuiltinMethod5	0x9F&lt;br /&gt;
#define OP_CallBuiltinMethod	0xA0&lt;br /&gt;
#define OP_GetAnim		0xA1&lt;br /&gt;
#define OP_switch		0xA2&lt;br /&gt;
#define OP_SetVariableField	0xA3&lt;br /&gt;
#define OP_divide		0xA4&lt;br /&gt;
#define OP_GetLocalFunction		0xA5&lt;br /&gt;
#define OP_ScriptFarChildThreadCall	0xA6&lt;br /&gt;
#define OP_multiply			0xA7&lt;br /&gt;
#define OP_ClearLocalVariableFieldCached			0xA8&lt;br /&gt;
#define OP_EvalAnimFieldVariableRef	0xA9&lt;br /&gt;
#define OP_EvalLocalArrayRefCached	0xAA&lt;br /&gt;
#define OP_EvalLocalVariableRefCached0	0xAB&lt;br /&gt;
#define OP_bit_and			0xAC&lt;br /&gt;
#define OP_GetAnimation			0xAD&lt;br /&gt;
#define OP_GetFarFunction			0xAE&lt;br /&gt;
#define OP_CallBuiltinPointer			0xAF&lt;br /&gt;
#define OP_jump				0xB0&lt;br /&gt;
#define OP_PreScriptCall		0xB1&lt;br /&gt;
#define OP_ScriptFarMethodCall	0xB2&lt;br /&gt;
#define OP_inequality		0xB3&lt;br /&gt;
#define OP_ScriptLocalFunctionCall	0xB4&lt;br /&gt;
#define OP_bit_ex_or		0xB5&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
==== PC ====&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#define OP_SetNewLocalVariableFieldCached0		0x17&lt;br /&gt;
#define OP_EvalSelfFieldVariable	0x18&lt;br /&gt;
#define OP_Return					0x19&lt;br /&gt;
#define OP_CallBuiltin0				0x1A&lt;br /&gt;
#define OP_CallBuiltin1				0x1B&lt;br /&gt;
#define OP_CallBuiltin2				0x1C&lt;br /&gt;
#define OP_CallBuiltin3				0x1D&lt;br /&gt;
#define OP_CallBuiltin4				0x1E&lt;br /&gt;
#define OP_CallBuiltin5				0x1F&lt;br /&gt;
#define OP_CallBuiltin				0x20&lt;br /&gt;
#define OP_BoolNot					0x21&lt;br /&gt;
#define OP_ScriptFarMethodThreadCall		0x22&lt;br /&gt;
#define OP_JumpOnTrueExpr					0x23&lt;br /&gt;
#define OP_SetLevelFieldVariableField		0x24&lt;br /&gt;
#define OP_CastBool							0x25&lt;br /&gt;
#define OP_EvalNewLocalArrayRefCached0		0x26&lt;br /&gt;
#define OP_CallBuiltinPointer		0x27&lt;br /&gt;
#define OP_inequality				0x28&lt;br /&gt;
#define OP_GetThisthread			0x29&lt;br /&gt;
#define OP_ClearFieldVariable		0x2A&lt;br /&gt;
#define OP_GetFloat					0x2B&lt;br /&gt;
#define OP_SafeCreateVariableFieldCached	0x2C&lt;br /&gt;
#define OP_ScriptFarFunctionCall2			0x2D&lt;br /&gt;
#define OP_ScriptFarFunctionCall			0x2E&lt;br /&gt;
#define OP_ScriptFarChildThreadCall			0x2F&lt;br /&gt;
#define OP_ClearLocalVariableFieldCached0		0x30&lt;br /&gt;
#define OP_ClearLocalVariableFieldCached		0x31&lt;br /&gt;
#define OP_checkclearparams		0x32&lt;br /&gt;
#define OP_CastFieldObject		0x33&lt;br /&gt;
#define OP_End					0x34&lt;br /&gt;
#define OP_size					0x35&lt;br /&gt;
#define OP_EmptyArray			0x36&lt;br /&gt;
#define OP_bit_and				0x37&lt;br /&gt;
#define OP_less_equal			0x38&lt;br /&gt;
#define OP_voidCodepos			0x39&lt;br /&gt;
#define OP_ScriptMethodThreadCallPointer	0x3A&lt;br /&gt;
#define OP_endswitch						0x3B&lt;br /&gt;
#define OP_ClearVariableField				0x3C&lt;br /&gt;
#define OP_divide							0x3D&lt;br /&gt;
#define OP_ScriptFarMethodChildThreadCall	0x3E&lt;br /&gt;
#define OP_GetUnsignedShort				0x3F&lt;br /&gt;
#define OP_JumpOnTrue					0x40&lt;br /&gt;
#define OP_GetSelf						0x41&lt;br /&gt;
#define OP_ScriptFarThreadCall			0x42&lt;br /&gt;
#define OP_ScriptLocalThreadCall		0x43&lt;br /&gt;
#define OP_SetLocalVariableFieldCached0		0x44&lt;br /&gt;
#define OP_SetLocalVariableFieldCached		0x45&lt;br /&gt;
#define OP_plus							0x46&lt;br /&gt;
#define OP_BoolComplement				0x47&lt;br /&gt;
#define OP_ScriptMethodCallPointer		0x48&lt;br /&gt;
#define OP_inc							0x49&lt;br /&gt;
#define OP_RemoveLocalVariables			0x4A&lt;br /&gt;
#define OP_JumpOnFalseExpr				0x4B&lt;br /&gt;
#define OP_switch						0x4C&lt;br /&gt;
#define OP_clearparams					0x4D&lt;br /&gt;
#define OP_EvalLocalVariableRefCached0		0x4E&lt;br /&gt;
#define OP_EvalLocalVariableRefCached		0x4F&lt;br /&gt;
#define OP_ScriptLocalMethodCall		0x50&lt;br /&gt;
#define OP_EvalFieldVariable		0x51&lt;br /&gt;
#define OP_EvalFieldVariableRef		0x52&lt;br /&gt;
#define OP_GetString				0x53&lt;br /&gt;
#define OP_ScriptFunctionCallPointer	0x54&lt;br /&gt;
#define OP_EvalLevelFieldVariable		0x55&lt;br /&gt;
#define OP_GetVector			0x56&lt;br /&gt;
#define OP_endon				0x57&lt;br /&gt;
#define OP_greater_equal		0x58&lt;br /&gt;
#define OP_GetSelfObject		0x59&lt;br /&gt;
#define OP_SetAnimFieldVariableField	0x5A&lt;br /&gt;
#define OP_SetVariableField				0x5B&lt;br /&gt;
#define OP_ScriptLocalFunctionCall2		0x5C&lt;br /&gt;
#define OP_ScriptLocalFunctionCall		0x5D&lt;br /&gt;
#define OP_EvalLocalArrayRefCached0		0x5E&lt;br /&gt;
#define OP_EvalLocalArrayRefCached		0x5F&lt;br /&gt;
#define OP_GetFarFunction		0x60&lt;br /&gt;
#define OP_less					0x61&lt;br /&gt;
#define OP_GetGameRef			0x62&lt;br /&gt;
#define OP_waittillFrameEnd		0x63&lt;br /&gt;
#define OP_SafeSetVariableFieldCached0		0x64&lt;br /&gt;
#define OP_SafeSetVariableFieldCached		0x65&lt;br /&gt;
#define OP_ScriptMethodChildThreadCallPointer		0x66&lt;br /&gt;
#define OP_GetLevel			0x67&lt;br /&gt;
#define OP_notify			0x68&lt;br /&gt;
#define OP_DecTop			0x69&lt;br /&gt;
#define OP_shift_left		0x6A&lt;br /&gt;
#define OP_ScriptLocalMethodThreadCall		0x6B&lt;br /&gt;
#define OP_ScriptLocalMethodChildThreadCall	0x6C&lt;br /&gt;
#define OP_greater						0x6D&lt;br /&gt;
#define OP_EvalLocalVariableCached0		0x6E&lt;br /&gt;
#define OP_EvalLocalVariableCached1		0x6F&lt;br /&gt;
#define OP_EvalLocalVariableCached2		0x70&lt;br /&gt;
#define OP_EvalLocalVariableCached3		0x71&lt;br /&gt;
#define OP_EvalLocalVariableCached4		0x72&lt;br /&gt;
#define OP_EvalLocalVariableCached5		0x73&lt;br /&gt;
#define OP_EvalLocalVariableCached		0x74&lt;br /&gt;
#define OP_SafeSetWaittillVariableFieldCached		0x75&lt;br /&gt;
#define OP_jump							0x76&lt;br /&gt;
#define OP_ScriptThreadCallPointer		0x77&lt;br /&gt;
#define OP_GetZero				0x78&lt;br /&gt;
#define OP_wait					0x79&lt;br /&gt;
#define OP_minus				0x7A&lt;br /&gt;
#define OP_SetSelfFieldVariableField		0x7B&lt;br /&gt;
#define OP_EvalNewLocalVariableRefCached0	0x7C&lt;br /&gt;
#define OP_multiply						0x7D&lt;br /&gt;
#define OP_CreateLocalVariable			0x7E&lt;br /&gt;
#define OP_ScriptLocalChildThreadCall	0x7F&lt;br /&gt;
#define OP_GetInteger					0x80&lt;br /&gt;
#define OP_mod							0x81&lt;br /&gt;
#define OP_EvalAnimFieldVariableRef		0x82&lt;br /&gt;
#define OP_GetBuiltinFunction			0x83&lt;br /&gt;
#define OP_GetGame				0x84&lt;br /&gt;
#define OP_waittill				0x85&lt;br /&gt;
#define OP_dec					0x86&lt;br /&gt;
#define OP_EvalLocalVariableObjectCached	0x87&lt;br /&gt;
#define OP_PreScriptCall		0x88&lt;br /&gt;
#define OP_GetAnim				0x89&lt;br /&gt;
#define OP_GetUndefined			0x8A&lt;br /&gt;
#define OP_EvalLevelFieldVariableRef		0x8B&lt;br /&gt;
#define OP_GetAnimObject		0x8C&lt;br /&gt;
#define OP_GetLevelObject		0x8D&lt;br /&gt;
#define OP_bit_ex_or			0x8E&lt;br /&gt;
#define OP_equality				0x8F&lt;br /&gt;
#define OP_ClearArray			0x90&lt;br /&gt;
#define OP_jumpback				0x91&lt;br /&gt;
#define OP_GetAnimation			0x92&lt;br /&gt;
#define OP_EvalAnimFieldVariable		0x93&lt;br /&gt;
#define OP_GetAnimTree					0x94&lt;br /&gt;
#define OP_GetIString					0x95&lt;br /&gt;
#define OP_EvalArrayRef					0x96&lt;br /&gt;
#define OP_EvalSelfFieldVariableRef		0x97&lt;br /&gt;
#define OP_GetNegByte					0x98&lt;br /&gt;
#define OP_GetBuiltinMethod				0x99&lt;br /&gt;
#define OP_CallBuiltinMethodPointer		0x9A&lt;br /&gt;
#define OP_EvalArray				0x9B&lt;br /&gt;
#define OP_vector					0x9C&lt;br /&gt;
#define OP_ScriptFarMethodCall		0x9D&lt;br /&gt;
#define OP_EvalLocalArrayCached		0x9E&lt;br /&gt;
#define OP_GetByte					0x9F&lt;br /&gt;
#define OP_ScriptChildThreadCallPointer		0xA0&lt;br /&gt;
#define OP_bit_or				0xA1&lt;br /&gt;
#define OP_AddArray				0xA2&lt;br /&gt;
#define OP_waittillmatch2		0xA3&lt;br /&gt;
#define OP_waittillmatch		0xA4&lt;br /&gt;
#define OP_GetLocalFunction		0xA5&lt;br /&gt;
#define OP_GetNegUnsignedShort		0xA6&lt;br /&gt;
#define OP_shift_right				0xA7&lt;br /&gt;
#define OP_CallBuiltinMethod0		0xA8&lt;br /&gt;
#define OP_CallBuiltinMethod1		0xA9&lt;br /&gt;
#define OP_CallBuiltinMethod2		0xAA&lt;br /&gt;
#define OP_CallBuiltinMethod3		0xAB&lt;br /&gt;
#define OP_CallBuiltinMethod4		0xAC&lt;br /&gt;
#define OP_CallBuiltinMethod5		0xAD&lt;br /&gt;
#define OP_CallBuiltinMethod		0xAE&lt;br /&gt;
#define OP_JumpOnFalse				0xAF&lt;br /&gt;
#define OP_count				0xB0&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
=== OP_EvalLocalArrayRefCached0 ===&lt;br /&gt;
This opcode evaluates the last created local array using OP_EvalArrayRef internally.&lt;br /&gt;
=== OP_EvalNewLocalArrayRefCached0 ===&lt;br /&gt;
This opcode is used to create a local array and set one of its elements without having to initialize it first. This opcode jumps internally to OP_EvalLocalArrayRefCached0.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
array[&amp;quot;friendly&amp;quot;] = 3;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
The asm:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
OP_GetByte 3&lt;br /&gt;
OP_GetString &amp;quot;friendly&amp;quot;&lt;br /&gt;
OP_EvalNewLocalArrayRefCached0 0&lt;br /&gt;
OP_SetVariableField&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
=== OP_EvalArrayRef ===&lt;br /&gt;
This opcode is used to evaluate an array index to &#039;&#039;&#039;set&#039;&#039;&#039; its value afterwards. The first ent on the stack is the index, the second ent is the value.&lt;br /&gt;
In scriptfiles, this opcode is only used to evaluate fields.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
level.array[0] = 1;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
The asm:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
OP_GetByte 1&lt;br /&gt;
OP_GetZero&lt;br /&gt;
OP_EvalLevelFieldVariableRef array&lt;br /&gt;
OP_EvalArrayRef&lt;br /&gt;
OP_SetVariableField&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
=== OP_AddArray ===&lt;br /&gt;
This opcode is used to append an object of any type to an array. When initializing a new array, it starts off from an empty one.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
array = [ 0, 1 ];&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
The asm:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
OP_EmptyArray&lt;br /&gt;
OP_GetZero&lt;br /&gt;
OP_AddArray&lt;br /&gt;
OP_GetByte 1&lt;br /&gt;
OP_AddArray&lt;br /&gt;
OP_SetNewLocalVariableFieldCached0 0&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
This opcode can also build on another array, but is not supposed to be used like this.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
array2 = array + [ 2.0, &amp;quot;3&amp;quot; ];&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
The asm:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
OP_EvalLocalVariableCached0&lt;br /&gt;
OP_GetFloat 2.0&lt;br /&gt;
OP_AddArray&lt;br /&gt;
OP_GetString &amp;quot;3&amp;quot;&lt;br /&gt;
OP_AddArray&lt;br /&gt;
OP_SetNewLocalVariableFieldCached0 1&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== OP_SetNewLocalVariableFieldCached0 ===&lt;br /&gt;
This creates a new local variable and then sets the ent on the stack as its value. The variable index is stored as a byte after the opcode.&lt;br /&gt;
=== OP_CallBuiltin ===&lt;br /&gt;
These opcodes are used to make calls to native functions built into the game&#039;s executable. Unlike methods, these functions do not pass any objects. For opcodes OP_CallBuiltin0 through OP_CallBuiltin5, the number it ends with is the number of parameters to be passed to the function. For OP_CallBuiltin, the number of parameters is loaded after the opcode as an 8 bit integer. The function id is then loaded as a 16 bit integer. That value is then used as an index in the function table below.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; class=&amp;quot;article-table mw-collapsible mw-collapsed wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!rowspan=&amp;quot;2&amp;quot;|Function&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|MW3&lt;br /&gt;
|-&lt;br /&gt;
!PC ID&lt;br /&gt;
!PS3/XBOX ID&lt;br /&gt;
&amp;lt;!-- funcion list 1 --&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|createprintchannel&lt;br /&gt;
|N/A&lt;br /&gt;
|0x1&lt;br /&gt;
|-&lt;br /&gt;
|setprintchannel&lt;br /&gt;
|0xe&lt;br /&gt;
|0x2&lt;br /&gt;
|-&lt;br /&gt;
|print&lt;br /&gt;
|0xf&lt;br /&gt;
|0x3&lt;br /&gt;
|-&lt;br /&gt;
|println&lt;br /&gt;
|0x10&lt;br /&gt;
|0x4&lt;br /&gt;
|-&lt;br /&gt;
|print3d&lt;br /&gt;
|0x11&lt;br /&gt;
|0x5&lt;br /&gt;
|-&lt;br /&gt;
|line&lt;br /&gt;
|0x12&lt;br /&gt;
|0x6&lt;br /&gt;
|-&lt;br /&gt;
|precacheturret&lt;br /&gt;
|N/A&lt;br /&gt;
|0x7&lt;br /&gt;
|-&lt;br /&gt;
|getweaponarray&lt;br /&gt;
|N/A&lt;br /&gt;
|0x8&lt;br /&gt;
|-&lt;br /&gt;
|spawnturret&lt;br /&gt;
|0x13&lt;br /&gt;
|0x9&lt;br /&gt;
|-&lt;br /&gt;
|canspawnturret&lt;br /&gt;
|0x14&lt;br /&gt;
|0xa&lt;br /&gt;
|-&lt;br /&gt;
|assert&lt;br /&gt;
|0x15&lt;br /&gt;
|0xb&lt;br /&gt;
|-&lt;br /&gt;
|assertex&lt;br /&gt;
|0x26&lt;br /&gt;
|0xc&lt;br /&gt;
|-&lt;br /&gt;
|assertmsg&lt;br /&gt;
|0x27&lt;br /&gt;
|0xd&lt;br /&gt;
|-&lt;br /&gt;
|isdefined&lt;br /&gt;
|0x28&lt;br /&gt;
|0xe&lt;br /&gt;
|-&lt;br /&gt;
|isstring&lt;br /&gt;
|0x29&lt;br /&gt;
|0xf&lt;br /&gt;
|-&lt;br /&gt;
|setdvar&lt;br /&gt;
|0x2a&lt;br /&gt;
|0x10&lt;br /&gt;
|-&lt;br /&gt;
|setdynamicdvar&lt;br /&gt;
|0x2b&lt;br /&gt;
|0x11&lt;br /&gt;
|-&lt;br /&gt;
|setdvarifuninitialized&lt;br /&gt;
|0x2c&lt;br /&gt;
|0x12&lt;br /&gt;
|-&lt;br /&gt;
|setdevdvar&lt;br /&gt;
|0x2d&lt;br /&gt;
|0x13&lt;br /&gt;
|-&lt;br /&gt;
|setdevdvarifuninitialized&lt;br /&gt;
|0x2e&lt;br /&gt;
|0x14&lt;br /&gt;
|-&lt;br /&gt;
|getdvar&lt;br /&gt;
|0x2f&lt;br /&gt;
|0x15&lt;br /&gt;
|-&lt;br /&gt;
|getdvarint&lt;br /&gt;
|0x30&lt;br /&gt;
|0x16&lt;br /&gt;
|-&lt;br /&gt;
|getdvarfloat&lt;br /&gt;
|0x31&lt;br /&gt;
|0x17&lt;br /&gt;
|-&lt;br /&gt;
|getdvarvector&lt;br /&gt;
|0x32&lt;br /&gt;
|0x18&lt;br /&gt;
|-&lt;br /&gt;
|gettime&lt;br /&gt;
|0x33&lt;br /&gt;
|0x19&lt;br /&gt;
|-&lt;br /&gt;
|getentbynum&lt;br /&gt;
|0x34&lt;br /&gt;
|0x1a&lt;br /&gt;
|-&lt;br /&gt;
|getweaponmodel&lt;br /&gt;
|0x35&lt;br /&gt;
|0x1b&lt;br /&gt;
|-&lt;br /&gt;
|getweaponhidetags&lt;br /&gt;
|0x51&lt;br /&gt;
|0x1c&lt;br /&gt;
|-&lt;br /&gt;
|getanimlength&lt;br /&gt;
|0x52&lt;br /&gt;
|0x1d&lt;br /&gt;
|-&lt;br /&gt;
|animhasnotetrack&lt;br /&gt;
|0x53&lt;br /&gt;
|0x1e&lt;br /&gt;
|-&lt;br /&gt;
|getnotetracktimes&lt;br /&gt;
|0x54&lt;br /&gt;
|0x1f&lt;br /&gt;
|-&lt;br /&gt;
|spawn&lt;br /&gt;
|0x55&lt;br /&gt;
|0x20&lt;br /&gt;
|-&lt;br /&gt;
|spawnloopsound&lt;br /&gt;
|0x56&lt;br /&gt;
|0x21&lt;br /&gt;
|-&lt;br /&gt;
|bullettrace&lt;br /&gt;
|0x57&lt;br /&gt;
|0x22&lt;br /&gt;
|-&lt;br /&gt;
|bullettracepassed&lt;br /&gt;
|0x58&lt;br /&gt;
|0x23&lt;br /&gt;
|-&lt;br /&gt;
|sighttracepassed&lt;br /&gt;
|0x74&lt;br /&gt;
|0x24&lt;br /&gt;
|-&lt;br /&gt;
|physicstrace&lt;br /&gt;
|0x75&lt;br /&gt;
|0x25&lt;br /&gt;
|-&lt;br /&gt;
|physicstracenormal&lt;br /&gt;
|0x76&lt;br /&gt;
|0x26&lt;br /&gt;
|-&lt;br /&gt;
|playerphysicstrace&lt;br /&gt;
|0x77&lt;br /&gt;
|0x27&lt;br /&gt;
|-&lt;br /&gt;
|getgroundposition&lt;br /&gt;
|0x78&lt;br /&gt;
|0x28&lt;br /&gt;
|-&lt;br /&gt;
|getmovedelta&lt;br /&gt;
|0x79&lt;br /&gt;
|0x29&lt;br /&gt;
|-&lt;br /&gt;
|getangledelta&lt;br /&gt;
|0x7a&lt;br /&gt;
|0x2a&lt;br /&gt;
|-&lt;br /&gt;
|getnorthyaw&lt;br /&gt;
|0x7b&lt;br /&gt;
|0x2b&lt;br /&gt;
|-&lt;br /&gt;
|setnorthyaw&lt;br /&gt;
|0x96&lt;br /&gt;
|0x2c&lt;br /&gt;
|-&lt;br /&gt;
|setslowmotion&lt;br /&gt;
|0x97&lt;br /&gt;
|0x2d&lt;br /&gt;
|-&lt;br /&gt;
|randomint&lt;br /&gt;
|0x98&lt;br /&gt;
|0x2e&lt;br /&gt;
|-&lt;br /&gt;
|randomfloat&lt;br /&gt;
|0x99&lt;br /&gt;
|0x2f&lt;br /&gt;
|-&lt;br /&gt;
|randomintrange&lt;br /&gt;
|0x9a&lt;br /&gt;
|0x30&lt;br /&gt;
|-&lt;br /&gt;
|randomfloatrange&lt;br /&gt;
|0x9b&lt;br /&gt;
|0x31&lt;br /&gt;
|-&lt;br /&gt;
|sin&lt;br /&gt;
|0x9c&lt;br /&gt;
|0x32&lt;br /&gt;
|-&lt;br /&gt;
|cos&lt;br /&gt;
|0x9d&lt;br /&gt;
|0x33&lt;br /&gt;
|-&lt;br /&gt;
|tan&lt;br /&gt;
|0x9e&lt;br /&gt;
|0x34&lt;br /&gt;
|-&lt;br /&gt;
|asin&lt;br /&gt;
|0x9f&lt;br /&gt;
|0x35&lt;br /&gt;
|-&lt;br /&gt;
|acos&lt;br /&gt;
|0xa0&lt;br /&gt;
|0x36&lt;br /&gt;
|-&lt;br /&gt;
|atan&lt;br /&gt;
|0xa1&lt;br /&gt;
|0x37&lt;br /&gt;
|-&lt;br /&gt;
|int&lt;br /&gt;
|0xa2&lt;br /&gt;
|0x38&lt;br /&gt;
|-&lt;br /&gt;
|float&lt;br /&gt;
|0xa3&lt;br /&gt;
|0x39&lt;br /&gt;
|-&lt;br /&gt;
|abs&lt;br /&gt;
|0xa4&lt;br /&gt;
|0x3a&lt;br /&gt;
|-&lt;br /&gt;
|min&lt;br /&gt;
|0xa5&lt;br /&gt;
|0x3b&lt;br /&gt;
|-&lt;br /&gt;
|max&lt;br /&gt;
|0xc6&lt;br /&gt;
|0x3c&lt;br /&gt;
|-&lt;br /&gt;
|floor&lt;br /&gt;
|0xc7&lt;br /&gt;
|0x3d&lt;br /&gt;
|-&lt;br /&gt;
|ceil&lt;br /&gt;
|0xc8&lt;br /&gt;
|0x3e&lt;br /&gt;
|-&lt;br /&gt;
|exp&lt;br /&gt;
|0xc9&lt;br /&gt;
|0x3f&lt;br /&gt;
|-&lt;br /&gt;
|log&lt;br /&gt;
|0xca&lt;br /&gt;
|0x40&lt;br /&gt;
|-&lt;br /&gt;
|sqrt&lt;br /&gt;
|0xcb&lt;br /&gt;
|0x41&lt;br /&gt;
|-&lt;br /&gt;
|squared&lt;br /&gt;
|0xcc&lt;br /&gt;
|0x42&lt;br /&gt;
|-&lt;br /&gt;
|clamp&lt;br /&gt;
|0xcd&lt;br /&gt;
|0x43&lt;br /&gt;
|-&lt;br /&gt;
|angleclamp&lt;br /&gt;
|0xce&lt;br /&gt;
|0x44&lt;br /&gt;
|-&lt;br /&gt;
|angleclamp180&lt;br /&gt;
|0xcf&lt;br /&gt;
|0x45&lt;br /&gt;
|-&lt;br /&gt;
|vectorfromlinetopoint&lt;br /&gt;
|0xd0&lt;br /&gt;
|0x46&lt;br /&gt;
|-&lt;br /&gt;
|pointonsegmentnearesttopoint&lt;br /&gt;
|0xd1&lt;br /&gt;
|0x47&lt;br /&gt;
|-&lt;br /&gt;
|distance&lt;br /&gt;
|0xd2&lt;br /&gt;
|0x48&lt;br /&gt;
|-&lt;br /&gt;
|distance2d&lt;br /&gt;
|0xd3&lt;br /&gt;
|0x49&lt;br /&gt;
|-&lt;br /&gt;
|distancesquared&lt;br /&gt;
|0xd4&lt;br /&gt;
|0x4a&lt;br /&gt;
|-&lt;br /&gt;
|length&lt;br /&gt;
|0xd5&lt;br /&gt;
|0x4b&lt;br /&gt;
|-&lt;br /&gt;
|lengthsquared&lt;br /&gt;
|0xd6&lt;br /&gt;
|0x4c&lt;br /&gt;
|-&lt;br /&gt;
|closer&lt;br /&gt;
|0xd7&lt;br /&gt;
|0x4d&lt;br /&gt;
|-&lt;br /&gt;
|vectordot&lt;br /&gt;
|0xd8&lt;br /&gt;
|0x4e&lt;br /&gt;
|-&lt;br /&gt;
|vectornormalize&lt;br /&gt;
|0xf6&lt;br /&gt;
|0x4f&lt;br /&gt;
|-&lt;br /&gt;
|vectortoangles&lt;br /&gt;
|0xf7&lt;br /&gt;
|0x50&lt;br /&gt;
|-&lt;br /&gt;
|vectortoyaw&lt;br /&gt;
|0xf8&lt;br /&gt;
|0x51&lt;br /&gt;
|-&lt;br /&gt;
|vectorlerp&lt;br /&gt;
|0xf9&lt;br /&gt;
|0x52&lt;br /&gt;
|-&lt;br /&gt;
|anglestoup&lt;br /&gt;
|0xfa&lt;br /&gt;
|0x53&lt;br /&gt;
|-&lt;br /&gt;
|anglestoright&lt;br /&gt;
|0xfb&lt;br /&gt;
|0x54&lt;br /&gt;
|-&lt;br /&gt;
|anglestoforward&lt;br /&gt;
|0xfc&lt;br /&gt;
|0x55&lt;br /&gt;
|-&lt;br /&gt;
|combineangles&lt;br /&gt;
|0xfd&lt;br /&gt;
|0x56&lt;br /&gt;
|-&lt;br /&gt;
|transformmove&lt;br /&gt;
|0xfe&lt;br /&gt;
|0x57&lt;br /&gt;
|-&lt;br /&gt;
|issubstr&lt;br /&gt;
|0xff&lt;br /&gt;
|0x58&lt;br /&gt;
|-&lt;br /&gt;
|isendstr&lt;br /&gt;
|0x100&lt;br /&gt;
|0x59&lt;br /&gt;
|-&lt;br /&gt;
|getsubstr&lt;br /&gt;
|0x101&lt;br /&gt;
|0x5a&lt;br /&gt;
|-&lt;br /&gt;
|tolower&lt;br /&gt;
|0x102&lt;br /&gt;
|0x5b&lt;br /&gt;
|-&lt;br /&gt;
|strtok&lt;br /&gt;
|0x103&lt;br /&gt;
|0x5c&lt;br /&gt;
|-&lt;br /&gt;
|stricmp&lt;br /&gt;
|0x104&lt;br /&gt;
|0x5d&lt;br /&gt;
|-&lt;br /&gt;
|ambientplay&lt;br /&gt;
|0x105&lt;br /&gt;
|0x5e&lt;br /&gt;
|-&lt;br /&gt;
|ambientstop&lt;br /&gt;
|0x125&lt;br /&gt;
|0x5f&lt;br /&gt;
|-&lt;br /&gt;
|precachemodel&lt;br /&gt;
|0x126&lt;br /&gt;
|0x60&lt;br /&gt;
|-&lt;br /&gt;
|precacheshellshock&lt;br /&gt;
|0x127&lt;br /&gt;
|0x61&lt;br /&gt;
|-&lt;br /&gt;
|precacheitem&lt;br /&gt;
|0x128&lt;br /&gt;
|0x62&lt;br /&gt;
|-&lt;br /&gt;
|precacheshader&lt;br /&gt;
|0x129&lt;br /&gt;
|0x63&lt;br /&gt;
|-&lt;br /&gt;
|precachestring&lt;br /&gt;
|0x12a&lt;br /&gt;
|0x64&lt;br /&gt;
|-&lt;br /&gt;
|precachemenu&lt;br /&gt;
|0x12b&lt;br /&gt;
|0x65&lt;br /&gt;
|-&lt;br /&gt;
|precacherumble&lt;br /&gt;
|0x12c&lt;br /&gt;
|0x66&lt;br /&gt;
|-&lt;br /&gt;
|precachelocationselector&lt;br /&gt;
|0x12d&lt;br /&gt;
|0x67&lt;br /&gt;
|-&lt;br /&gt;
|precacheleaderboards&lt;br /&gt;
|0x12e&lt;br /&gt;
|0x68&lt;br /&gt;
|-&lt;br /&gt;
|precacheheadicon&lt;br /&gt;
|0x146&lt;br /&gt;
|0xe9&lt;br /&gt;
|-&lt;br /&gt;
|loadfx&lt;br /&gt;
|0x12f&lt;br /&gt;
|0x1c5&lt;br /&gt;
|-&lt;br /&gt;
|playfx&lt;br /&gt;
|0x130&lt;br /&gt;
|0x1c6&lt;br /&gt;
|-&lt;br /&gt;
|unknown&lt;br /&gt;
|N/A&lt;br /&gt;
|0x69&lt;br /&gt;
|-&lt;br /&gt;
|playfxontag&lt;br /&gt;
|0x131&lt;br /&gt;
|0x6a&lt;br /&gt;
|-&lt;br /&gt;
|stopfxontag&lt;br /&gt;
|0x132&lt;br /&gt;
|0x6b&lt;br /&gt;
|-&lt;br /&gt;
|killfxontag&lt;br /&gt;
|N/A&lt;br /&gt;
|0x6c&lt;br /&gt;
|-&lt;br /&gt;
|playloopedfx&lt;br /&gt;
|0x133&lt;br /&gt;
|0x6d&lt;br /&gt;
|-&lt;br /&gt;
|spawnfx&lt;br /&gt;
|0x134&lt;br /&gt;
|0x6e&lt;br /&gt;
|-&lt;br /&gt;
|triggerfx&lt;br /&gt;
|0x135&lt;br /&gt;
|0x6f&lt;br /&gt;
|-&lt;br /&gt;
|playfxontagforclients&lt;br /&gt;
|0x136&lt;br /&gt;
|0x70&lt;br /&gt;
|-&lt;br /&gt;
|physicsexplosionsphere&lt;br /&gt;
|0x15a&lt;br /&gt;
|0x71&lt;br /&gt;
|-&lt;br /&gt;
|physicsexplosioncylinder&lt;br /&gt;
|0x15b&lt;br /&gt;
|0x72&lt;br /&gt;
|-&lt;br /&gt;
|physicsjolt&lt;br /&gt;
|0x15c&lt;br /&gt;
|0x73&lt;br /&gt;
|-&lt;br /&gt;
|physicsjitter&lt;br /&gt;
|0x15d&lt;br /&gt;
|0x74&lt;br /&gt;
|-&lt;br /&gt;
|setexpfog&lt;br /&gt;
|0x15e&lt;br /&gt;
|0x75&lt;br /&gt;
|-&lt;br /&gt;
|isexplosivedamagemod&lt;br /&gt;
|0x15f&lt;br /&gt;
|0x76&lt;br /&gt;
|-&lt;br /&gt;
|radiusdamage&lt;br /&gt;
|0x160&lt;br /&gt;
|0x77&lt;br /&gt;
|-&lt;br /&gt;
|setplayerignoreradiusdamage&lt;br /&gt;
|0x161&lt;br /&gt;
|0x78&lt;br /&gt;
|-&lt;br /&gt;
|glassradiusdamage&lt;br /&gt;
|0x162&lt;br /&gt;
|0x79&lt;br /&gt;
|-&lt;br /&gt;
|earthquake&lt;br /&gt;
|0x163&lt;br /&gt;
|0x7a&lt;br /&gt;
|-&lt;br /&gt;
|getnumparts&lt;br /&gt;
|0x164&lt;br /&gt;
|0x7b&lt;br /&gt;
|-&lt;br /&gt;
|getpartname&lt;br /&gt;
|0x182&lt;br /&gt;
|0x7c&lt;br /&gt;
|-&lt;br /&gt;
|weaponfiretime&lt;br /&gt;
|0x183&lt;br /&gt;
|0x7d&lt;br /&gt;
|-&lt;br /&gt;
|weaponclipsize&lt;br /&gt;
|0x184&lt;br /&gt;
|0x7e&lt;br /&gt;
|-&lt;br /&gt;
|weaponisauto&lt;br /&gt;
|0x185&lt;br /&gt;
|0x7f&lt;br /&gt;
|-&lt;br /&gt;
|weaponissemiauto&lt;br /&gt;
|0x186&lt;br /&gt;
|0x80&lt;br /&gt;
|-&lt;br /&gt;
|weaponisboltaction&lt;br /&gt;
|0x187&lt;br /&gt;
|0x81&lt;br /&gt;
|-&lt;br /&gt;
|weaponinheritsperks&lt;br /&gt;
|0x188&lt;br /&gt;
|0x82&lt;br /&gt;
|-&lt;br /&gt;
|weaponburstcount&lt;br /&gt;
|0x189&lt;br /&gt;
|0x83&lt;br /&gt;
|-&lt;br /&gt;
|weapontype&lt;br /&gt;
|0x18a&lt;br /&gt;
|0x84&lt;br /&gt;
|-&lt;br /&gt;
|weaponclass&lt;br /&gt;
|0x18b&lt;br /&gt;
|0x85&lt;br /&gt;
|-&lt;br /&gt;
|weaponinventorytype&lt;br /&gt;
|0x1b5&lt;br /&gt;
|0x86&lt;br /&gt;
|-&lt;br /&gt;
|weaponstartammo&lt;br /&gt;
|0x1b6&lt;br /&gt;
|0x87&lt;br /&gt;
|-&lt;br /&gt;
|weaponmaxammo&lt;br /&gt;
|0x1b7&lt;br /&gt;
|0x88&lt;br /&gt;
|-&lt;br /&gt;
|weaponaltweaponname&lt;br /&gt;
|0x1b8&lt;br /&gt;
|0x89&lt;br /&gt;
|-&lt;br /&gt;
|isweaponcliponly&lt;br /&gt;
|0x1b9&lt;br /&gt;
|0x8a&lt;br /&gt;
|-&lt;br /&gt;
|isweapondetonationtimed&lt;br /&gt;
|0x1ba&lt;br /&gt;
|0x8b&lt;br /&gt;
|-&lt;br /&gt;
|weaponhasthermalscope&lt;br /&gt;
|0x1bb&lt;br /&gt;
|0x8c&lt;br /&gt;
|-&lt;br /&gt;
|getvehiclenode&lt;br /&gt;
|0x1bc&lt;br /&gt;
|0x8d&lt;br /&gt;
|-&lt;br /&gt;
|getvehiclenodearray&lt;br /&gt;
|0x1bd&lt;br /&gt;
|0x8e&lt;br /&gt;
|-&lt;br /&gt;
|getallvehiclenodes&lt;br /&gt;
|0x1be&lt;br /&gt;
|0x8f&lt;br /&gt;
|-&lt;br /&gt;
|getnumvehicles&lt;br /&gt;
|0x1bf&lt;br /&gt;
|0x90&lt;br /&gt;
|-&lt;br /&gt;
|precachevehicle&lt;br /&gt;
|0x1c0&lt;br /&gt;
|0x91&lt;br /&gt;
|-&lt;br /&gt;
|spawnvehicle&lt;br /&gt;
|0x1c1&lt;br /&gt;
|0x92&lt;br /&gt;
|-&lt;br /&gt;
|getarray&lt;br /&gt;
|0x1c2&lt;br /&gt;
|0x93&lt;br /&gt;
|-&lt;br /&gt;
|getspawnerarray&lt;br /&gt;
|0x198&lt;br /&gt;
|0x94&lt;br /&gt;
|-&lt;br /&gt;
|playrumbleonposition&lt;br /&gt;
|0x199&lt;br /&gt;
|0x95&lt;br /&gt;
|-&lt;br /&gt;
|playrumblelooponposition&lt;br /&gt;
|0x19a&lt;br /&gt;
|0x96&lt;br /&gt;
|-&lt;br /&gt;
|stopallrumbles&lt;br /&gt;
|0x19b&lt;br /&gt;
|0x97&lt;br /&gt;
|-&lt;br /&gt;
|soundexists&lt;br /&gt;
|0x19c&lt;br /&gt;
|0x98&lt;br /&gt;
|-&lt;br /&gt;
|openfile&lt;br /&gt;
|0x19d&lt;br /&gt;
|0x99&lt;br /&gt;
|-&lt;br /&gt;
|closefile&lt;br /&gt;
|0x19e&lt;br /&gt;
|0x9a&lt;br /&gt;
|-&lt;br /&gt;
|fprintln&lt;br /&gt;
|0x19f&lt;br /&gt;
|0x9b&lt;br /&gt;
|-&lt;br /&gt;
|fprintfields&lt;br /&gt;
|0x1a0&lt;br /&gt;
|0x9c&lt;br /&gt;
|-&lt;br /&gt;
|freadln&lt;br /&gt;
|0x1a1&lt;br /&gt;
|0x9d&lt;br /&gt;
|-&lt;br /&gt;
|fgetarg&lt;br /&gt;
|0x1a2&lt;br /&gt;
|0x9e&lt;br /&gt;
|-&lt;br /&gt;
|setminimap&lt;br /&gt;
|0x1a3&lt;br /&gt;
|0x9f&lt;br /&gt;
|-&lt;br /&gt;
|setthermalbodymaterial&lt;br /&gt;
|0x1a4&lt;br /&gt;
|0xa0&lt;br /&gt;
|-&lt;br /&gt;
|getarraykeys&lt;br /&gt;
|0x1a5&lt;br /&gt;
|0xa1&lt;br /&gt;
|-&lt;br /&gt;
|getfirstarraykey&lt;br /&gt;
|0x1a6&lt;br /&gt;
|0xa2&lt;br /&gt;
|-&lt;br /&gt;
|getnextarraykey&lt;br /&gt;
|0x18c&lt;br /&gt;
|0xa3&lt;br /&gt;
|-&lt;br /&gt;
|sortbydistance&lt;br /&gt;
|0x18d&lt;br /&gt;
|0xa4&lt;br /&gt;
|-&lt;br /&gt;
|tablelookup&lt;br /&gt;
|0x18e&lt;br /&gt;
|0xa5&lt;br /&gt;
|-&lt;br /&gt;
|tablelookupbyrow&lt;br /&gt;
|0x18f&lt;br /&gt;
|0xa6&lt;br /&gt;
|-&lt;br /&gt;
|tablelookupistring&lt;br /&gt;
|0x190&lt;br /&gt;
|0xa7&lt;br /&gt;
|-&lt;br /&gt;
|tablelookupistringbyrow&lt;br /&gt;
|0x191&lt;br /&gt;
|0xa8&lt;br /&gt;
|-&lt;br /&gt;
|tablelookuprownum&lt;br /&gt;
|0x192&lt;br /&gt;
|0xa9&lt;br /&gt;
|-&lt;br /&gt;
|getmissileowner&lt;br /&gt;
|0x193&lt;br /&gt;
|0xaa&lt;br /&gt;
|-&lt;br /&gt;
|magicbullet&lt;br /&gt;
|0x194&lt;br /&gt;
|0xab&lt;br /&gt;
|-&lt;br /&gt;
|getweaponflashtagname&lt;br /&gt;
|0x195&lt;br /&gt;
|0xac&lt;br /&gt;
|-&lt;br /&gt;
|averagepoint&lt;br /&gt;
|0x196&lt;br /&gt;
|0xad&lt;br /&gt;
|-&lt;br /&gt;
|averagenormal&lt;br /&gt;
|0x197&lt;br /&gt;
|0xae&lt;br /&gt;
|-&lt;br /&gt;
|getglass&lt;br /&gt;
|0x1a7&lt;br /&gt;
|0xaf&lt;br /&gt;
|-&lt;br /&gt;
|getglassarray&lt;br /&gt;
|0x1a8&lt;br /&gt;
|0xb0&lt;br /&gt;
|-&lt;br /&gt;
|getglassorigin&lt;br /&gt;
|0x1a9&lt;br /&gt;
|0xb1&lt;br /&gt;
|-&lt;br /&gt;
|isglassdestroyed&lt;br /&gt;
|0x1aa&lt;br /&gt;
|0xb2&lt;br /&gt;
|-&lt;br /&gt;
|destroyglass&lt;br /&gt;
|0x1ab&lt;br /&gt;
|0xb3&lt;br /&gt;
|-&lt;br /&gt;
|deleteglass&lt;br /&gt;
|0x1ac&lt;br /&gt;
|0xb4&lt;br /&gt;
|-&lt;br /&gt;
|getentchannelscount&lt;br /&gt;
|0x1ad&lt;br /&gt;
|0xb5&lt;br /&gt;
|-&lt;br /&gt;
|getentchannelname&lt;br /&gt;
|N/A&lt;br /&gt;
|0xb6&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- objective functions --&amp;gt;&lt;br /&gt;
|objective_add&lt;br /&gt;
|0x1af&lt;br /&gt;
|0xb7&lt;br /&gt;
|-&lt;br /&gt;
|objective_delete&lt;br /&gt;
|0x1b0&lt;br /&gt;
|0xb8&lt;br /&gt;
|-&lt;br /&gt;
|objective_state&lt;br /&gt;
|0x1b1&lt;br /&gt;
|0xb9&lt;br /&gt;
|-&lt;br /&gt;
|objective_icon&lt;br /&gt;
|0x1b2&lt;br /&gt;
|0xba&lt;br /&gt;
|-&lt;br /&gt;
|objective_position&lt;br /&gt;
|0x1b3&lt;br /&gt;
|0xbb&lt;br /&gt;
|-&lt;br /&gt;
|objective_current&lt;br /&gt;
|0x1b4&lt;br /&gt;
|0xbc&lt;br /&gt;
|-&lt;br /&gt;
|objective_onentity&lt;br /&gt;
|0x165&lt;br /&gt;
|0xbd&lt;br /&gt;
|-&lt;br /&gt;
|objective_team&lt;br /&gt;
|0x166&lt;br /&gt;
|0xbe&lt;br /&gt;
|-&lt;br /&gt;
|objective_player&lt;br /&gt;
|0x167&lt;br /&gt;
|0xbf&lt;br /&gt;
|-&lt;br /&gt;
|objective_playerteam&lt;br /&gt;
|0x168&lt;br /&gt;
|0xc0&lt;br /&gt;
|-&lt;br /&gt;
|objective_playerenemyteam&lt;br /&gt;
|0x169&lt;br /&gt;
|0xc1&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- function list 2 --&amp;gt;&lt;br /&gt;
|iprintln&lt;br /&gt;
|0x16a&lt;br /&gt;
|0xc2&lt;br /&gt;
|-&lt;br /&gt;
|iprintlnbold&lt;br /&gt;
|0x16b&lt;br /&gt;
|0xc3&lt;br /&gt;
|-&lt;br /&gt;
|logstring&lt;br /&gt;
|0x16c&lt;br /&gt;
|0xc4&lt;br /&gt;
|-&lt;br /&gt;
|getent&lt;br /&gt;
|0x16d&lt;br /&gt;
|0xc5&lt;br /&gt;
|-&lt;br /&gt;
|getentarray&lt;br /&gt;
|0x16e&lt;br /&gt;
|0xc6&lt;br /&gt;
|-&lt;br /&gt;
|spawnplane&lt;br /&gt;
|0x16f&lt;br /&gt;
|0xc7&lt;br /&gt;
|-&lt;br /&gt;
|spawnstruct&lt;br /&gt;
|0x170&lt;br /&gt;
|0xc8&lt;br /&gt;
|-&lt;br /&gt;
|spawnhelicopter&lt;br /&gt;
|0x171&lt;br /&gt;
|0xc9&lt;br /&gt;
|-&lt;br /&gt;
|isalive&lt;br /&gt;
|0x172&lt;br /&gt;
|0xca&lt;br /&gt;
|-&lt;br /&gt;
|isspawner&lt;br /&gt;
|0x173&lt;br /&gt;
|0xcb&lt;br /&gt;
|-&lt;br /&gt;
|createattractorent&lt;br /&gt;
|0x174&lt;br /&gt;
|0xcc&lt;br /&gt;
|-&lt;br /&gt;
|createattractororigin&lt;br /&gt;
|0x175&lt;br /&gt;
|0xcd&lt;br /&gt;
|-&lt;br /&gt;
|createrepulsorent&lt;br /&gt;
|0x176&lt;br /&gt;
|0xce&lt;br /&gt;
|-&lt;br /&gt;
|createrepulsororigin&lt;br /&gt;
|0x177&lt;br /&gt;
|0xcf&lt;br /&gt;
|-&lt;br /&gt;
|deleteattractor&lt;br /&gt;
|0x178&lt;br /&gt;
|0xd0&lt;br /&gt;
|-&lt;br /&gt;
|playsoundatpos&lt;br /&gt;
|0x179&lt;br /&gt;
|0xd1&lt;br /&gt;
|-&lt;br /&gt;
|newhudelem&lt;br /&gt;
|0x17a&lt;br /&gt;
|0x1c7&lt;br /&gt;
|-&lt;br /&gt;
|newclienthudelem&lt;br /&gt;
|0x17b&lt;br /&gt;
|0xd2&lt;br /&gt;
|-&lt;br /&gt;
|newteamhudelem&lt;br /&gt;
|0x17c&lt;br /&gt;
|0xd3&lt;br /&gt;
|-&lt;br /&gt;
|newdamageindicatorhudelem&lt;br /&gt;
|N/A&lt;br /&gt;
|0xd4&lt;br /&gt;
|-&lt;br /&gt;
|resettimeout&lt;br /&gt;
|0x17d&lt;br /&gt;
|0xd5&lt;br /&gt;
|-&lt;br /&gt;
|precachefxteamthermal&lt;br /&gt;
|0x17e&lt;br /&gt;
|0xd6&lt;br /&gt;
|-&lt;br /&gt;
|isplayer&lt;br /&gt;
|0x17f&lt;br /&gt;
|0xd7&lt;br /&gt;
|-&lt;br /&gt;
|isplayernumber&lt;br /&gt;
|0x180&lt;br /&gt;
|0xd8&lt;br /&gt;
|-&lt;br /&gt;
|setsunlight&lt;br /&gt;
|0x39&lt;br /&gt;
|0x191&lt;br /&gt;
|-&lt;br /&gt;
|resetsunlight&lt;br /&gt;
|0x3a&lt;br /&gt;
|0x192&lt;br /&gt;
|-&lt;br /&gt;
|setwinningplayer&lt;br /&gt;
|0x181&lt;br /&gt;
|0xd9&lt;br /&gt;
|-&lt;br /&gt;
|setwinningteam&lt;br /&gt;
|0x137&lt;br /&gt;
|0xda&lt;br /&gt;
|-&lt;br /&gt;
|announcement&lt;br /&gt;
|0x138&lt;br /&gt;
|0xdb&lt;br /&gt;
|-&lt;br /&gt;
|clientannouncement&lt;br /&gt;
|0x139&lt;br /&gt;
|0xdc&lt;br /&gt;
|-&lt;br /&gt;
|getteamscore&lt;br /&gt;
|0x13a&lt;br /&gt;
|0xdd&lt;br /&gt;
|-&lt;br /&gt;
|setteamscore&lt;br /&gt;
|0x13b&lt;br /&gt;
|0xde&lt;br /&gt;
|-&lt;br /&gt;
|setclientnamemode&lt;br /&gt;
|0x13c&lt;br /&gt;
|0xdf&lt;br /&gt;
|-&lt;br /&gt;
|updateclientnames&lt;br /&gt;
|0x13d&lt;br /&gt;
|0xe0&lt;br /&gt;
|-&lt;br /&gt;
|getteamplayersalive&lt;br /&gt;
|0x13e&lt;br /&gt;
|0xe1&lt;br /&gt;
|-&lt;br /&gt;
|logprint&lt;br /&gt;
|0x13f&lt;br /&gt;
|0xe2&lt;br /&gt;
|-&lt;br /&gt;
|worldentnumber&lt;br /&gt;
|0x140&lt;br /&gt;
|0xe3&lt;br /&gt;
|-&lt;br /&gt;
|obituary&lt;br /&gt;
|0x141&lt;br /&gt;
|0xe4&lt;br /&gt;
|-&lt;br /&gt;
|positionwouldtelefrag&lt;br /&gt;
|0x142&lt;br /&gt;
|0xe5&lt;br /&gt;
|-&lt;br /&gt;
|canspawn&lt;br /&gt;
|0x143&lt;br /&gt;
|0xe6&lt;br /&gt;
|-&lt;br /&gt;
|getstarttime&lt;br /&gt;
|0x144&lt;br /&gt;
|0xe7&lt;br /&gt;
|-&lt;br /&gt;
|precachestatusicon&lt;br /&gt;
|0x145&lt;br /&gt;
|0xe8&lt;br /&gt;
|-&lt;br /&gt;
|precacheminimapicon&lt;br /&gt;
|0x147&lt;br /&gt;
|0xea&lt;br /&gt;
|-&lt;br /&gt;
|precachempanim&lt;br /&gt;
|0x148&lt;br /&gt;
|0xeb&lt;br /&gt;
|-&lt;br /&gt;
|restart&lt;br /&gt;
|0x149&lt;br /&gt;
|0xec&lt;br /&gt;
|-&lt;br /&gt;
|exitlevel&lt;br /&gt;
|0x14a&lt;br /&gt;
|0xed&lt;br /&gt;
|-&lt;br /&gt;
|addtestclient&lt;br /&gt;
|0x14b&lt;br /&gt;
|0xee&lt;br /&gt;
|-&lt;br /&gt;
|makedvarserverinfo&lt;br /&gt;
|0x14c&lt;br /&gt;
|0xef&lt;br /&gt;
|-&lt;br /&gt;
|setarchive&lt;br /&gt;
|0x14d&lt;br /&gt;
|0xf0&lt;br /&gt;
|-&lt;br /&gt;
|allclientsprint&lt;br /&gt;
|0x14e&lt;br /&gt;
|0xf1&lt;br /&gt;
|-&lt;br /&gt;
|clientprint&lt;br /&gt;
|0x14f&lt;br /&gt;
|0xf2&lt;br /&gt;
|-&lt;br /&gt;
|mapexists&lt;br /&gt;
|0x150&lt;br /&gt;
|0xf3&lt;br /&gt;
|-&lt;br /&gt;
|isvalidgametype&lt;br /&gt;
|0x151&lt;br /&gt;
|0xf4&lt;br /&gt;
|-&lt;br /&gt;
|matchend&lt;br /&gt;
|0x152&lt;br /&gt;
|0xf5&lt;br /&gt;
|-&lt;br /&gt;
|setplayerteamrank&lt;br /&gt;
|0x153&lt;br /&gt;
|0xf6&lt;br /&gt;
|-&lt;br /&gt;
|endparty&lt;br /&gt;
|0x154&lt;br /&gt;
|0xf7&lt;br /&gt;
|-&lt;br /&gt;
|setteamradar&lt;br /&gt;
|0x155&lt;br /&gt;
|0xf8&lt;br /&gt;
|-&lt;br /&gt;
|getteamradar&lt;br /&gt;
|0x156&lt;br /&gt;
|0xf9&lt;br /&gt;
|-&lt;br /&gt;
|setteamradarstrength&lt;br /&gt;
|0x157&lt;br /&gt;
|0xfa&lt;br /&gt;
|-&lt;br /&gt;
|getteamradarstrength&lt;br /&gt;
|0x158&lt;br /&gt;
|0xfb&lt;br /&gt;
|-&lt;br /&gt;
|getuavstrengthmin&lt;br /&gt;
|0x159&lt;br /&gt;
|0xfc&lt;br /&gt;
|-&lt;br /&gt;
|getuavstrengthmax&lt;br /&gt;
|0x106&lt;br /&gt;
|0xfd&lt;br /&gt;
|-&lt;br /&gt;
|getuavstrengthlevelneutral&lt;br /&gt;
|0x107&lt;br /&gt;
|0xfe&lt;br /&gt;
|-&lt;br /&gt;
|getuavstrengthlevelshowenemyfastsweep&lt;br /&gt;
|0x108&lt;br /&gt;
|0xff&lt;br /&gt;
|-&lt;br /&gt;
|getuavstrengthlevelshowenemydirectional&lt;br /&gt;
|0x109&lt;br /&gt;
|0x100&lt;br /&gt;
|-&lt;br /&gt;
|blockteamradar&lt;br /&gt;
|0x10a&lt;br /&gt;
|0x101&lt;br /&gt;
|-&lt;br /&gt;
|unblockteamradar&lt;br /&gt;
|0x10b&lt;br /&gt;
|0x102&lt;br /&gt;
|-&lt;br /&gt;
|isteamradarblocked&lt;br /&gt;
|0x10c&lt;br /&gt;
|0x103&lt;br /&gt;
|-&lt;br /&gt;
|getassignedteam&lt;br /&gt;
|0x10d&lt;br /&gt;
|0x104&lt;br /&gt;
|-&lt;br /&gt;
|setmatchdata&lt;br /&gt;
|0x10e&lt;br /&gt;
|0x105&lt;br /&gt;
|-&lt;br /&gt;
|getmatchdata&lt;br /&gt;
|0x10f&lt;br /&gt;
|0x106&lt;br /&gt;
|-&lt;br /&gt;
|sendmatchdata&lt;br /&gt;
|0x110&lt;br /&gt;
|0x107&lt;br /&gt;
|-&lt;br /&gt;
|clearmatchdata&lt;br /&gt;
|0x111&lt;br /&gt;
|0x108&lt;br /&gt;
|-&lt;br /&gt;
|setmatchdatadef&lt;br /&gt;
|0x112&lt;br /&gt;
|0x109&lt;br /&gt;
|-&lt;br /&gt;
|setmatchclientip&lt;br /&gt;
|0x113&lt;br /&gt;
|0x10a&lt;br /&gt;
|-&lt;br /&gt;
|setmatchdataid&lt;br /&gt;
|0x114&lt;br /&gt;
|0x10b&lt;br /&gt;
|-&lt;br /&gt;
|setclientmatchdata&lt;br /&gt;
|0x115&lt;br /&gt;
|0x10c&lt;br /&gt;
|-&lt;br /&gt;
|getclientmatchdata&lt;br /&gt;
|0x116&lt;br /&gt;
|0x10d&lt;br /&gt;
|-&lt;br /&gt;
|setclientmatchdatadef&lt;br /&gt;
|0x117&lt;br /&gt;
|0x10e&lt;br /&gt;
|-&lt;br /&gt;
|sendclientmatchdata&lt;br /&gt;
|0x118&lt;br /&gt;
|0x10f&lt;br /&gt;
|-&lt;br /&gt;
|getbuildversion&lt;br /&gt;
|0x119&lt;br /&gt;
|0x110&lt;br /&gt;
|-&lt;br /&gt;
|getbuildnumber&lt;br /&gt;
|0x11a&lt;br /&gt;
|0x111&lt;br /&gt;
|-&lt;br /&gt;
|getsystemtime&lt;br /&gt;
|0x11b&lt;br /&gt;
|0x112&lt;br /&gt;
|-&lt;br /&gt;
|getmatchrulesdata&lt;br /&gt;
|0x11c&lt;br /&gt;
|0x113&lt;br /&gt;
|-&lt;br /&gt;
|isusingmatchrulesdata&lt;br /&gt;
|0x11d&lt;br /&gt;
|0x114&lt;br /&gt;
|-&lt;br /&gt;
|kick&lt;br /&gt;
|0x11e&lt;br /&gt;
|0x115&lt;br /&gt;
|-&lt;br /&gt;
|issplitscreen&lt;br /&gt;
|0x11f&lt;br /&gt;
|0x116&lt;br /&gt;
|-&lt;br /&gt;
|setmapcenter&lt;br /&gt;
|0x120&lt;br /&gt;
|0x117&lt;br /&gt;
|-&lt;br /&gt;
|setgameendtime&lt;br /&gt;
|0x121&lt;br /&gt;
|0x118&lt;br /&gt;
|-&lt;br /&gt;
|visionsetnaked&lt;br /&gt;
|0x122&lt;br /&gt;
|0x119&lt;br /&gt;
|-&lt;br /&gt;
|visionsetnight&lt;br /&gt;
|0x123&lt;br /&gt;
|0x11a&lt;br /&gt;
|-&lt;br /&gt;
|visionsetmissilecam&lt;br /&gt;
|0x124&lt;br /&gt;
|0x11b&lt;br /&gt;
|-&lt;br /&gt;
|visionsetthermal&lt;br /&gt;
|0xd9&lt;br /&gt;
|0x11c&lt;br /&gt;
|-&lt;br /&gt;
|visionsetpain&lt;br /&gt;
|0xda&lt;br /&gt;
|0x11d&lt;br /&gt;
|-&lt;br /&gt;
|endlobby&lt;br /&gt;
|0xdb&lt;br /&gt;
|0x11e&lt;br /&gt;
|-&lt;br /&gt;
|ambience&lt;br /&gt;
|0xdc&lt;br /&gt;
|0x11f&lt;br /&gt;
|-&lt;br /&gt;
|getmapcustom&lt;br /&gt;
|0xdd&lt;br /&gt;
|0x120&lt;br /&gt;
|-&lt;br /&gt;
|updateskill&lt;br /&gt;
|0xde&lt;br /&gt;
|0x121&lt;br /&gt;
|-&lt;br /&gt;
|spawnsighttrace&lt;br /&gt;
|0xdf&lt;br /&gt;
|0x122&lt;br /&gt;
|-&lt;br /&gt;
|incrementcounter&lt;br /&gt;
|N/A&lt;br /&gt;
|0x123&lt;br /&gt;
|-&lt;br /&gt;
|getcountertotal&lt;br /&gt;
|N/A&lt;br /&gt;
|0x124&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== OP_CallBuiltinMethod ===&lt;br /&gt;
These opcodes are used to make calls to native methods built into the game&#039;s executable. Unlike functions, the methods must pass an object. For OP_CallBuiltinMethod0 - OP_CallBuiltinMethod5, the number it ends with is the number of parameters to be passed to the function. For OP_CallBuiltinMethod, the number of parameters is loaded after the opcode as an 8 bit integer. The method id is then loaded as a 16 bit integer. That value is then used as an index in the method table below.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; class=&amp;quot;article-table mw-collapsible mw-collapsed wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!rowspan=&amp;quot;2&amp;quot;|Method&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|MW3&lt;br /&gt;
|-&lt;br /&gt;
!PC ID&lt;br /&gt;
!PS3/XBOX ID&lt;br /&gt;
&amp;lt;!-- builtin --&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|attach&lt;br /&gt;
|0x8017&lt;br /&gt;
|0x8000&lt;br /&gt;
|-&lt;br /&gt;
|attachshieldmodel&lt;br /&gt;
|0x8018&lt;br /&gt;
|0x8001&lt;br /&gt;
|-&lt;br /&gt;
|detach&lt;br /&gt;
|0x8024&lt;br /&gt;
|0x8002&lt;br /&gt;
|-&lt;br /&gt;
|detachshieldmodel&lt;br /&gt;
|0x8025&lt;br /&gt;
|0x8003&lt;br /&gt;
|-&lt;br /&gt;
|moveshieldmodel&lt;br /&gt;
|0x8026&lt;br /&gt;
|0x8004&lt;br /&gt;
|-&lt;br /&gt;
|detachall&lt;br /&gt;
|0x8027&lt;br /&gt;
|0x8005&lt;br /&gt;
|-&lt;br /&gt;
|getattachsize&lt;br /&gt;
|0x8028&lt;br /&gt;
|0x8006&lt;br /&gt;
|-&lt;br /&gt;
|getattachmodelname&lt;br /&gt;
|0x8029&lt;br /&gt;
|0x8007&lt;br /&gt;
|-&lt;br /&gt;
|getattachtagname&lt;br /&gt;
|0x802a&lt;br /&gt;
|0x8008&lt;br /&gt;
|-&lt;br /&gt;
|getattachignorecollision&lt;br /&gt;
|0x8043&lt;br /&gt;
|0x8009&lt;br /&gt;
|-&lt;br /&gt;
|hidepart&lt;br /&gt;
|0x8044&lt;br /&gt;
|0x800a&lt;br /&gt;
|-&lt;br /&gt;
|allinstances&lt;br /&gt;
|0x8045&lt;br /&gt;
|0x800b&lt;br /&gt;
|-&lt;br /&gt;
|hideallparts&lt;br /&gt;
|0x8046&lt;br /&gt;
|0x800c&lt;br /&gt;
|-&lt;br /&gt;
|showpart&lt;br /&gt;
|0x8047&lt;br /&gt;
|0x800d&lt;br /&gt;
|-&lt;br /&gt;
|showallparts&lt;br /&gt;
|0x8048&lt;br /&gt;
|0x800e&lt;br /&gt;
|-&lt;br /&gt;
|linkto&lt;br /&gt;
|0x8049&lt;br /&gt;
|0x800f&lt;br /&gt;
|-&lt;br /&gt;
|linktoblendtotag&lt;br /&gt;
|0x804a&lt;br /&gt;
|0x8010&lt;br /&gt;
|-&lt;br /&gt;
|unlink&lt;br /&gt;
|0x804b&lt;br /&gt;
|0x8011&lt;br /&gt;
|-&lt;br /&gt;
|islinked&lt;br /&gt;
|0x8063&lt;br /&gt;
|0x8012&lt;br /&gt;
|-&lt;br /&gt;
|enablelinkto&lt;br /&gt;
|0x8064&lt;br /&gt;
|0x8013&lt;br /&gt;
|-&lt;br /&gt;
|playerlinkto&lt;br /&gt;
|0x8075&lt;br /&gt;
|0x8014&lt;br /&gt;
|-&lt;br /&gt;
|playerlinktodelta&lt;br /&gt;
|0x8076&lt;br /&gt;
|0x8015&lt;br /&gt;
|-&lt;br /&gt;
|playerlinkweaponviewtodelta&lt;br /&gt;
|0x8077&lt;br /&gt;
|0x8016&lt;br /&gt;
|-&lt;br /&gt;
|playerlinktoabsolute&lt;br /&gt;
|0x8078&lt;br /&gt;
|0x8017&lt;br /&gt;
|-&lt;br /&gt;
|playerlinktoblend&lt;br /&gt;
|0x8079&lt;br /&gt;
|0x8018&lt;br /&gt;
|-&lt;br /&gt;
|playerlinkedoffsetenable&lt;br /&gt;
|0x807a&lt;br /&gt;
|0x8019&lt;br /&gt;
|-&lt;br /&gt;
|playerlinkedoffsetdisable&lt;br /&gt;
|0x8094&lt;br /&gt;
|0x801a&lt;br /&gt;
|-&lt;br /&gt;
|playerlinkedsetviewznear&lt;br /&gt;
|0x8095&lt;br /&gt;
|0x801b&lt;br /&gt;
|-&lt;br /&gt;
|playerlinkedsetusebaseangleforviewclamp&lt;br /&gt;
|0x8096&lt;br /&gt;
|0x801c&lt;br /&gt;
|-&lt;br /&gt;
|lerpviewangleclamp&lt;br /&gt;
|0x8097&lt;br /&gt;
|0x801d&lt;br /&gt;
|-&lt;br /&gt;
|setviewangleresistance&lt;br /&gt;
|0x8098&lt;br /&gt;
|0x801e&lt;br /&gt;
|-&lt;br /&gt;
|geteye&lt;br /&gt;
|0x8099&lt;br /&gt;
|0x801f&lt;br /&gt;
|-&lt;br /&gt;
|istouching&lt;br /&gt;
|0x809a&lt;br /&gt;
|0x8020&lt;br /&gt;
|-&lt;br /&gt;
|stoploopsound&lt;br /&gt;
|0x809b&lt;br /&gt;
|0x8021&lt;br /&gt;
|-&lt;br /&gt;
|stopsounds&lt;br /&gt;
|0x809c&lt;br /&gt;
|0x8022&lt;br /&gt;
|-&lt;br /&gt;
|playrumbleonentity&lt;br /&gt;
|0x809d&lt;br /&gt;
|0x8023&lt;br /&gt;
|-&lt;br /&gt;
|playrumblelooponentity&lt;br /&gt;
|0x809e&lt;br /&gt;
|0x8024&lt;br /&gt;
|-&lt;br /&gt;
|stoprumble&lt;br /&gt;
|0x809f&lt;br /&gt;
|0x8025&lt;br /&gt;
|-&lt;br /&gt;
|delete&lt;br /&gt;
|0x80a0&lt;br /&gt;
|0x8026&lt;br /&gt;
|-&lt;br /&gt;
|setmodel&lt;br /&gt;
|0x80a1&lt;br /&gt;
|0x8027&lt;br /&gt;
|-&lt;br /&gt;
|laseron&lt;br /&gt;
|0x80a2&lt;br /&gt;
|0x8028&lt;br /&gt;
|-&lt;br /&gt;
|laseroff&lt;br /&gt;
|0x80a3&lt;br /&gt;
|0x8029&lt;br /&gt;
|-&lt;br /&gt;
|laseraltviewon&lt;br /&gt;
|0x80a4&lt;br /&gt;
|0x802a&lt;br /&gt;
|-&lt;br /&gt;
|laseraltviewoff&lt;br /&gt;
|0x80a5&lt;br /&gt;
|0x802b&lt;br /&gt;
|-&lt;br /&gt;
|thermalvisionon&lt;br /&gt;
|0x80a6&lt;br /&gt;
|0x802c&lt;br /&gt;
|-&lt;br /&gt;
|thermalvisionoff&lt;br /&gt;
|0x80a7&lt;br /&gt;
|0x802d&lt;br /&gt;
|-&lt;br /&gt;
|thermaldrawenable&lt;br /&gt;
|0x8023&lt;br /&gt;
|0x82ef&lt;br /&gt;
|-&lt;br /&gt;
|thermaldrawdisable&lt;br /&gt;
|0x8000&lt;br /&gt;
|0x82f0&lt;br /&gt;
|-&lt;br /&gt;
|thermalvisionfofoverlayon&lt;br /&gt;
|0x80a8&lt;br /&gt;
|0x802e&lt;br /&gt;
|-&lt;br /&gt;
|thermalvisionfofoverlayoff&lt;br /&gt;
|0x80a9&lt;br /&gt;
|0x802f&lt;br /&gt;
|-&lt;br /&gt;
|autospotoverlayon&lt;br /&gt;
|0x80aa&lt;br /&gt;
|0x8030&lt;br /&gt;
|-&lt;br /&gt;
|autospotoverlayoff&lt;br /&gt;
|0x80ab&lt;br /&gt;
|0x8031&lt;br /&gt;
|-&lt;br /&gt;
|setcontents&lt;br /&gt;
|0x80ac&lt;br /&gt;
|0x8032&lt;br /&gt;
|-&lt;br /&gt;
|makeusable&lt;br /&gt;
|0x80ad&lt;br /&gt;
|0x8033&lt;br /&gt;
|-&lt;br /&gt;
|makeunusable&lt;br /&gt;
|0x80ae&lt;br /&gt;
|0x8034&lt;br /&gt;
|-&lt;br /&gt;
|setcursorhint&lt;br /&gt;
|0x80c6&lt;br /&gt;
|0x8035&lt;br /&gt;
|-&lt;br /&gt;
|sethintstring&lt;br /&gt;
|0x80c7&lt;br /&gt;
|0x8036&lt;br /&gt;
|-&lt;br /&gt;
|forceusehinton&lt;br /&gt;
|0x80c8&lt;br /&gt;
|0x8037&lt;br /&gt;
|-&lt;br /&gt;
|forceusehintoff&lt;br /&gt;
|0x80c9&lt;br /&gt;
|0x8038&lt;br /&gt;
|-&lt;br /&gt;
|makesoft&lt;br /&gt;
|0x80ca&lt;br /&gt;
|0x8039&lt;br /&gt;
|-&lt;br /&gt;
|makehard&lt;br /&gt;
|0x80cb&lt;br /&gt;
|0x803a&lt;br /&gt;
|-&lt;br /&gt;
|willneverchange&lt;br /&gt;
|0x80cc&lt;br /&gt;
|0x803b&lt;br /&gt;
|-&lt;br /&gt;
|startfiring&lt;br /&gt;
|0x80cd&lt;br /&gt;
|0x803c&lt;br /&gt;
|-&lt;br /&gt;
|stopfiring&lt;br /&gt;
|0x80ce&lt;br /&gt;
|0x803d&lt;br /&gt;
|-&lt;br /&gt;
|isfiringturret&lt;br /&gt;
|0x80cf&lt;br /&gt;
|0x803e&lt;br /&gt;
|-&lt;br /&gt;
|startbarrelspin&lt;br /&gt;
|0x80d0&lt;br /&gt;
|0x803f&lt;br /&gt;
|-&lt;br /&gt;
|stopbarrelspin&lt;br /&gt;
|0x80d1&lt;br /&gt;
|0x8040&lt;br /&gt;
|-&lt;br /&gt;
|getbarrelspinrate&lt;br /&gt;
|0x80d2&lt;br /&gt;
|0x8041&lt;br /&gt;
|-&lt;br /&gt;
|remotecontrolturret&lt;br /&gt;
|0x80d3&lt;br /&gt;
|0x8042&lt;br /&gt;
|-&lt;br /&gt;
|remotecontrolturretoff&lt;br /&gt;
|0x80d4&lt;br /&gt;
|0x8043&lt;br /&gt;
|-&lt;br /&gt;
|shootturret&lt;br /&gt;
|0x80d5&lt;br /&gt;
|0x8044&lt;br /&gt;
|-&lt;br /&gt;
|getturretowner&lt;br /&gt;
|0x80d6&lt;br /&gt;
|0x8045&lt;br /&gt;
|-&lt;br /&gt;
|setsentryowner&lt;br /&gt;
|0x80ee&lt;br /&gt;
|0x8046&lt;br /&gt;
|-&lt;br /&gt;
|setsentrycarrier&lt;br /&gt;
|0x80ef&lt;br /&gt;
|0x8047&lt;br /&gt;
|-&lt;br /&gt;
|setturretminimapvisible&lt;br /&gt;
|0x80f0&lt;br /&gt;
|0x8048&lt;br /&gt;
|-&lt;br /&gt;
|settargetentity&lt;br /&gt;
|0x80f1&lt;br /&gt;
|0x8049&lt;br /&gt;
|-&lt;br /&gt;
|snaptotargetentity&lt;br /&gt;
|0x80f2&lt;br /&gt;
|0x804a&lt;br /&gt;
|-&lt;br /&gt;
|cleartargetentity&lt;br /&gt;
|0x80f3&lt;br /&gt;
|0x804b&lt;br /&gt;
|-&lt;br /&gt;
|getturrettarget&lt;br /&gt;
|0x80f4&lt;br /&gt;
|0x804c&lt;br /&gt;
|-&lt;br /&gt;
|setplayerspread&lt;br /&gt;
|0x80f5&lt;br /&gt;
|0x804d&lt;br /&gt;
|-&lt;br /&gt;
|setaispread&lt;br /&gt;
|0x80f6&lt;br /&gt;
|0x804e&lt;br /&gt;
|-&lt;br /&gt;
|setsuppressiontime&lt;br /&gt;
|0x80f7&lt;br /&gt;
|0x804f&lt;br /&gt;
|-&lt;br /&gt;
|setconvergencetime&lt;br /&gt;
|0x8119&lt;br /&gt;
|0x8050&lt;br /&gt;
|-&lt;br /&gt;
|setconvergenceheightpercent&lt;br /&gt;
|0x811a&lt;br /&gt;
|0x8051&lt;br /&gt;
|-&lt;br /&gt;
|setturretteam&lt;br /&gt;
|0x811b&lt;br /&gt;
|0x8052&lt;br /&gt;
|-&lt;br /&gt;
|maketurretsolid&lt;br /&gt;
|0x811c&lt;br /&gt;
|0x8053&lt;br /&gt;
|-&lt;br /&gt;
|maketurretoperable&lt;br /&gt;
|0x811d&lt;br /&gt;
|0x8054&lt;br /&gt;
|-&lt;br /&gt;
|maketurretinoperable&lt;br /&gt;
|0x811e&lt;br /&gt;
|0x8055&lt;br /&gt;
|-&lt;br /&gt;
|setturretaccuracy&lt;br /&gt;
|0x813a&lt;br /&gt;
|0x8056&lt;br /&gt;
|-&lt;br /&gt;
|setrightarc&lt;br /&gt;
|0x813b&lt;br /&gt;
|0x8057&lt;br /&gt;
|-&lt;br /&gt;
|setleftarc&lt;br /&gt;
|0x813c&lt;br /&gt;
|0x8058&lt;br /&gt;
|-&lt;br /&gt;
|settoparc&lt;br /&gt;
|0x813d&lt;br /&gt;
|0x8059&lt;br /&gt;
|-&lt;br /&gt;
|setbottomarc&lt;br /&gt;
|0x813e&lt;br /&gt;
|0x805a&lt;br /&gt;
|-&lt;br /&gt;
|setautorotationdelay&lt;br /&gt;
|0x813f&lt;br /&gt;
|0x805b&lt;br /&gt;
|-&lt;br /&gt;
|setdefaultdroppitch&lt;br /&gt;
|0x8140&lt;br /&gt;
|0x805c&lt;br /&gt;
|-&lt;br /&gt;
|restoredefaultdroppitch&lt;br /&gt;
|0x8141&lt;br /&gt;
|0x805d&lt;br /&gt;
|-&lt;br /&gt;
|turretfiredisable&lt;br /&gt;
|0x8142&lt;br /&gt;
|0x805e&lt;br /&gt;
|-&lt;br /&gt;
|turretfireenable&lt;br /&gt;
|0x8161&lt;br /&gt;
|0x805f&lt;br /&gt;
|-&lt;br /&gt;
|setturretmodechangewait&lt;br /&gt;
|0x8162&lt;br /&gt;
|0x8060&lt;br /&gt;
|-&lt;br /&gt;
|usetriggerrequirelookat&lt;br /&gt;
|0x8163&lt;br /&gt;
|0x8061&lt;br /&gt;
|-&lt;br /&gt;
|getstance&lt;br /&gt;
|0x8164&lt;br /&gt;
|0x8062&lt;br /&gt;
|-&lt;br /&gt;
|setstance&lt;br /&gt;
|0x8165&lt;br /&gt;
|0x8063&lt;br /&gt;
|-&lt;br /&gt;
|itemweaponsetammo&lt;br /&gt;
|0x8166&lt;br /&gt;
|0x8064&lt;br /&gt;
|-&lt;br /&gt;
|getammocount&lt;br /&gt;
|0x8167&lt;br /&gt;
|0x8065&lt;br /&gt;
|-&lt;br /&gt;
|gettagorigin&lt;br /&gt;
|0x8168&lt;br /&gt;
|0x8066&lt;br /&gt;
|-&lt;br /&gt;
|gettagangles&lt;br /&gt;
|0x8169&lt;br /&gt;
|0x8067&lt;br /&gt;
|-&lt;br /&gt;
|shellshock&lt;br /&gt;
|0x816a&lt;br /&gt;
|0x8068&lt;br /&gt;
|-&lt;br /&gt;
|stunplayer&lt;br /&gt;
|0x816b&lt;br /&gt;
|0x8069&lt;br /&gt;
|-&lt;br /&gt;
|stopshellshock&lt;br /&gt;
|0x816c&lt;br /&gt;
|0x806a&lt;br /&gt;
|-&lt;br /&gt;
|fadeoutshellshock&lt;br /&gt;
|0x816d&lt;br /&gt;
|0x806b&lt;br /&gt;
|-&lt;br /&gt;
|setdepthoffield&lt;br /&gt;
|0x816e&lt;br /&gt;
|0x806c&lt;br /&gt;
|-&lt;br /&gt;
|setviewmodeldepthoffield&lt;br /&gt;
|0x816f&lt;br /&gt;
|0x806d&lt;br /&gt;
|-&lt;br /&gt;
|setmotionblurmovescale&lt;br /&gt;
|0x8170&lt;br /&gt;
|0x806e&lt;br /&gt;
|-&lt;br /&gt;
|setmotionblurturnscale&lt;br /&gt;
|0x8190&lt;br /&gt;
|0x806f&lt;br /&gt;
|-&lt;br /&gt;
|setmotionblurzoomscale&lt;br /&gt;
|0x8191&lt;br /&gt;
|0x8070&lt;br /&gt;
|-&lt;br /&gt;
|viewkick&lt;br /&gt;
|0x8192&lt;br /&gt;
|0x8071&lt;br /&gt;
|-&lt;br /&gt;
|localtoworldcoords&lt;br /&gt;
|0x8193&lt;br /&gt;
|0x8072&lt;br /&gt;
|-&lt;br /&gt;
|getentitynumber&lt;br /&gt;
|0x8194&lt;br /&gt;
|0x8073&lt;br /&gt;
|-&lt;br /&gt;
|getentityvelocity&lt;br /&gt;
|0x8195&lt;br /&gt;
|0x8074&lt;br /&gt;
|-&lt;br /&gt;
|enablegrenadetouchdamage&lt;br /&gt;
|0x8196&lt;br /&gt;
|0x8075&lt;br /&gt;
|-&lt;br /&gt;
|disablegrenadetouchdamage&lt;br /&gt;
|0x8197&lt;br /&gt;
|0x8076&lt;br /&gt;
|-&lt;br /&gt;
|enableaimassist&lt;br /&gt;
|0x8198&lt;br /&gt;
|0x8077&lt;br /&gt;
|-&lt;br /&gt;
|disableaimassist&lt;br /&gt;
|0x81b7&lt;br /&gt;
|0x8078&lt;br /&gt;
|-&lt;br /&gt;
|radiusdamage&lt;br /&gt;
|0x81b8&lt;br /&gt;
|0x8079&lt;br /&gt;
|-&lt;br /&gt;
|detonate&lt;br /&gt;
|0x81b9&lt;br /&gt;
|0x807a&lt;br /&gt;
|-&lt;br /&gt;
|damageconetrace&lt;br /&gt;
|0x81ba&lt;br /&gt;
|0x807b&lt;br /&gt;
|-&lt;br /&gt;
|sightconetrace&lt;br /&gt;
|0x81bb&lt;br /&gt;
|0x807c&lt;br /&gt;
|-&lt;br /&gt;
|settargetent&lt;br /&gt;
|0x81bc&lt;br /&gt;
|0x807d&lt;br /&gt;
|-&lt;br /&gt;
|settargetpos&lt;br /&gt;
|0x81bd&lt;br /&gt;
|0x807e&lt;br /&gt;
|-&lt;br /&gt;
|cleartarget&lt;br /&gt;
|0x81be&lt;br /&gt;
|0x807f&lt;br /&gt;
|-&lt;br /&gt;
|setflightmodedirect&lt;br /&gt;
|0x81bf&lt;br /&gt;
|0x8080&lt;br /&gt;
|-&lt;br /&gt;
|setflightmodetop&lt;br /&gt;
|0x81c0&lt;br /&gt;
|0x8081&lt;br /&gt;
|-&lt;br /&gt;
|getlightintensity&lt;br /&gt;
|0x81c1&lt;br /&gt;
|0x8082&lt;br /&gt;
|-&lt;br /&gt;
|setlightintensity&lt;br /&gt;
|0x81c2&lt;br /&gt;
|0x8083&lt;br /&gt;
|-&lt;br /&gt;
|isragdoll&lt;br /&gt;
|0x81c3&lt;br /&gt;
|0x8084&lt;br /&gt;
|-&lt;br /&gt;
|setmovespeedscale&lt;br /&gt;
|0x81c4&lt;br /&gt;
|0x8085&lt;br /&gt;
|-&lt;br /&gt;
|cameralinkto&lt;br /&gt;
|0x81c5&lt;br /&gt;
|0x8086&lt;br /&gt;
|-&lt;br /&gt;
|cameraunlink&lt;br /&gt;
|0x81c6&lt;br /&gt;
|0x8087&lt;br /&gt;
|-&lt;br /&gt;
|controlslinkto&lt;br /&gt;
|0x81e3&lt;br /&gt;
|0x8088&lt;br /&gt;
|-&lt;br /&gt;
|controlsunlink&lt;br /&gt;
|0x81e4&lt;br /&gt;
|0x8089&lt;br /&gt;
|-&lt;br /&gt;
|makevehiclesolidcapsule&lt;br /&gt;
|0x81e5&lt;br /&gt;
|0x808a&lt;br /&gt;
|-&lt;br /&gt;
|makevehiclesolidsphere&lt;br /&gt;
|0x81e6&lt;br /&gt;
|0x808b&lt;br /&gt;
|-&lt;br /&gt;
|remotecontrolvehicle&lt;br /&gt;
|0x81e8&lt;br /&gt;
|0x808d&lt;br /&gt;
|-&lt;br /&gt;
|remotecontrolvehicleoff&lt;br /&gt;
|0x81e9&lt;br /&gt;
|0x808e&lt;br /&gt;
|-&lt;br /&gt;
|isfiringvehicleturret&lt;br /&gt;
|0x81ea&lt;br /&gt;
|0x808f&lt;br /&gt;
|-&lt;br /&gt;
|drivevehicleandcontrolturret&lt;br /&gt;
|0x81eb&lt;br /&gt;
|0x8090&lt;br /&gt;
|-&lt;br /&gt;
|drivevehicleandcontrolturretoff&lt;br /&gt;
|0x81ec&lt;br /&gt;
|0x8091&lt;br /&gt;
|-&lt;br /&gt;
|getplayersetting&lt;br /&gt;
|0x81ed&lt;br /&gt;
|0x8092&lt;br /&gt;
|-&lt;br /&gt;
|getlocalplayerprofiledata&lt;br /&gt;
|0x81ee&lt;br /&gt;
|0x8093&lt;br /&gt;
|-&lt;br /&gt;
|setlocalplayerprofiledata&lt;br /&gt;
|0x81ef&lt;br /&gt;
|0x8094&lt;br /&gt;
|-&lt;br /&gt;
|remotecamerasoundscapeon&lt;br /&gt;
|0x81f0&lt;br /&gt;
|0x8095&lt;br /&gt;
|-&lt;br /&gt;
|remotecamerasoundscapeoff&lt;br /&gt;
|0x81f1&lt;br /&gt;
|0x8096&lt;br /&gt;
|-&lt;br /&gt;
|radarjamon&lt;br /&gt;
|0x81f2&lt;br /&gt;
|0x8097&lt;br /&gt;
|-&lt;br /&gt;
|radarjamoff&lt;br /&gt;
|0x81f3&lt;br /&gt;
|0x8098&lt;br /&gt;
|-&lt;br /&gt;
|setmotiontrackervisible&lt;br /&gt;
|0x81f4&lt;br /&gt;
|0x8099&lt;br /&gt;
|-&lt;br /&gt;
|getmotiontrackervisible&lt;br /&gt;
|0x81f5&lt;br /&gt;
|0x809a&lt;br /&gt;
|-&lt;br /&gt;
|circle&lt;br /&gt;
|0x81f6&lt;br /&gt;
|0x809b&lt;br /&gt;
|-&lt;br /&gt;
|getpointinbounds&lt;br /&gt;
|0x81f7&lt;br /&gt;
|0x809c&lt;br /&gt;
|-&lt;br /&gt;
|transfermarkstonewscriptmodel&lt;br /&gt;
|0x81f8&lt;br /&gt;
|0x809d&lt;br /&gt;
|-&lt;br /&gt;
|setwatersheeting&lt;br /&gt;
|0x81f9&lt;br /&gt;
|0x809e&lt;br /&gt;
|-&lt;br /&gt;
|setweaponhudiconoverride&lt;br /&gt;
|0x81fa&lt;br /&gt;
|0x809f&lt;br /&gt;
|-&lt;br /&gt;
|getweaponhudiconoverride&lt;br /&gt;
|0x81fb&lt;br /&gt;
|0x80a0&lt;br /&gt;
|-&lt;br /&gt;
|setempjammed&lt;br /&gt;
|0x81fc&lt;br /&gt;
|0x80a1&lt;br /&gt;
|-&lt;br /&gt;
|playersetexpfog&lt;br /&gt;
|0x81fd&lt;br /&gt;
|0x80a2&lt;br /&gt;
|-&lt;br /&gt;
|isitemunlocked&lt;br /&gt;
|0x81fe&lt;br /&gt;
|0x80a3&lt;br /&gt;
|-&lt;br /&gt;
|getplayerdata&lt;br /&gt;
|0x81ff&lt;br /&gt;
|0x80a4&lt;br /&gt;
|-&lt;br /&gt;
|setplayerdata&lt;br /&gt;
|0x821a&lt;br /&gt;
|0x80a5&lt;br /&gt;
|-&lt;br /&gt;
|trackerupdate&lt;br /&gt;
|N/A&lt;br /&gt;
|0x80a6&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- player 1 --&amp;gt;&lt;br /&gt;
|pingplayer&lt;br /&gt;
|0x821c&lt;br /&gt;
|0x80a7&lt;br /&gt;
|-&lt;br /&gt;
|buttonpressed&lt;br /&gt;
|0x821d&lt;br /&gt;
|0x80a8&lt;br /&gt;
|-&lt;br /&gt;
|sayall&lt;br /&gt;
|0x821e&lt;br /&gt;
|0x80a9&lt;br /&gt;
|-&lt;br /&gt;
|sayteam&lt;br /&gt;
|0x821f&lt;br /&gt;
|0x80aa&lt;br /&gt;
|-&lt;br /&gt;
|showscoreboard&lt;br /&gt;
|0x8220&lt;br /&gt;
|0x80ab&lt;br /&gt;
|-&lt;br /&gt;
|setspawnweapon&lt;br /&gt;
|0x8221&lt;br /&gt;
|0x80ac&lt;br /&gt;
|-&lt;br /&gt;
|dropitem&lt;br /&gt;
|0x8222&lt;br /&gt;
|0x80ad&lt;br /&gt;
|-&lt;br /&gt;
|dropscavengerbag&lt;br /&gt;
|0x8223&lt;br /&gt;
|0x80ae&lt;br /&gt;
|-&lt;br /&gt;
|finishplayerdamage&lt;br /&gt;
|0x823c&lt;br /&gt;
|0x80af&lt;br /&gt;
|-&lt;br /&gt;
|suicide&lt;br /&gt;
|0x823d&lt;br /&gt;
|0x80b0&lt;br /&gt;
|-&lt;br /&gt;
|closeingamemenu&lt;br /&gt;
|0x823e&lt;br /&gt;
|0x80b1&lt;br /&gt;
|-&lt;br /&gt;
|iprintln&lt;br /&gt;
|0x823f&lt;br /&gt;
|0x80b2&lt;br /&gt;
|-&lt;br /&gt;
|iprintlnbold&lt;br /&gt;
|0x8240&lt;br /&gt;
|0x80b3&lt;br /&gt;
|-&lt;br /&gt;
|spawn&lt;br /&gt;
|0x8241&lt;br /&gt;
|0x80b4&lt;br /&gt;
|-&lt;br /&gt;
|setentertime&lt;br /&gt;
|0x8242&lt;br /&gt;
|0x80b5&lt;br /&gt;
|-&lt;br /&gt;
|cloneplayer&lt;br /&gt;
|0x8243&lt;br /&gt;
|0x80b6&lt;br /&gt;
|-&lt;br /&gt;
|istalking&lt;br /&gt;
|0x8244&lt;br /&gt;
|0x80b7&lt;br /&gt;
|-&lt;br /&gt;
|allowspectateteam&lt;br /&gt;
|0x8245&lt;br /&gt;
|0x80b8&lt;br /&gt;
|-&lt;br /&gt;
|getguid&lt;br /&gt;
|0x8246&lt;br /&gt;
|0x80b9&lt;br /&gt;
|-&lt;br /&gt;
|getxuid&lt;br /&gt;
|0x8266&lt;br /&gt;
|0x80ba&lt;br /&gt;
|-&lt;br /&gt;
|ishost&lt;br /&gt;
|0x8267&lt;br /&gt;
|0x80bb&lt;br /&gt;
|-&lt;br /&gt;
|getspectatingplayer&lt;br /&gt;
|0x8268&lt;br /&gt;
|0x80bc&lt;br /&gt;
|-&lt;br /&gt;
|predictstreampos&lt;br /&gt;
|0x8269&lt;br /&gt;
|0x80bd&lt;br /&gt;
|-&lt;br /&gt;
|updatescores&lt;br /&gt;
|0x826a&lt;br /&gt;
|0x80be&lt;br /&gt;
|-&lt;br /&gt;
|updatedmscores&lt;br /&gt;
|0x826b&lt;br /&gt;
|0x80bf&lt;br /&gt;
|-&lt;br /&gt;
|setrank&lt;br /&gt;
|0x826c&lt;br /&gt;
|0x80c0&lt;br /&gt;
|-&lt;br /&gt;
|setcardtitle&lt;br /&gt;
|0x826d&lt;br /&gt;
|0x80c1&lt;br /&gt;
|-&lt;br /&gt;
|setcardicon&lt;br /&gt;
|0x828c&lt;br /&gt;
|0x80c2&lt;br /&gt;
|-&lt;br /&gt;
|setcardnameplate&lt;br /&gt;
|0x828d&lt;br /&gt;
|0x80c3&lt;br /&gt;
|-&lt;br /&gt;
|setcarddisplayslot&lt;br /&gt;
|0x828e&lt;br /&gt;
|0x80c4&lt;br /&gt;
|-&lt;br /&gt;
|kc_regweaponforfxremoval&lt;br /&gt;
|0x828f&lt;br /&gt;
|0x80c5&lt;br /&gt;
|-&lt;br /&gt;
|laststandrevive&lt;br /&gt;
|0x8290&lt;br /&gt;
|0x80c6&lt;br /&gt;
|-&lt;br /&gt;
|setspectatedefaults&lt;br /&gt;
|0x8291&lt;br /&gt;
|0x80c7&lt;br /&gt;
|-&lt;br /&gt;
|getthirdpersoncrosshairoffset&lt;br /&gt;
|0x8292&lt;br /&gt;
|0x80c8&lt;br /&gt;
|-&lt;br /&gt;
|disableweaponpickup&lt;br /&gt;
|0x8293&lt;br /&gt;
|0x80c9&lt;br /&gt;
|-&lt;br /&gt;
|enableweaponpickup&lt;br /&gt;
|0x8294&lt;br /&gt;
|0x80ca&lt;br /&gt;
|-&lt;br /&gt;
|issplitscreenplayer&lt;br /&gt;
|N/A&lt;br /&gt;
|0x80cb&lt;br /&gt;
|-&lt;br /&gt;
|issplitscreenplayerprimary&lt;br /&gt;
|N/A&lt;br /&gt;
|0x80cc&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- player 2 --&amp;gt;&lt;br /&gt;
|getviewmodel&lt;br /&gt;
|0x82b1&lt;br /&gt;
|0x80cd&lt;br /&gt;
|-&lt;br /&gt;
|fragbuttonpressed&lt;br /&gt;
|0x82b2&lt;br /&gt;
|0x80ce&lt;br /&gt;
|-&lt;br /&gt;
|secondaryoffhandbuttonpressed&lt;br /&gt;
|0x82b3&lt;br /&gt;
|0x80cf&lt;br /&gt;
|-&lt;br /&gt;
|getcurrentweaponclipammo&lt;br /&gt;
|0x82b4&lt;br /&gt;
|0x80d0&lt;br /&gt;
|-&lt;br /&gt;
|setvelocity&lt;br /&gt;
|0x82b5&lt;br /&gt;
|0x80d1&lt;br /&gt;
|-&lt;br /&gt;
|getplayerviewheight&lt;br /&gt;
|0x82b6&lt;br /&gt;
|0x80d2&lt;br /&gt;
|-&lt;br /&gt;
|enablemousesteer&lt;br /&gt;
|0x8309&lt;br /&gt;
|0x8309&lt;br /&gt;
|-&lt;br /&gt;
|getnormalizedmovement&lt;br /&gt;
|0x82b7&lt;br /&gt;
|0x80d3&lt;br /&gt;
|-&lt;br /&gt;
|getnormalizedcameramovement&lt;br /&gt;
|0x82ce&lt;br /&gt;
|0x80d4&lt;br /&gt;
|-&lt;br /&gt;
|giveweapon&lt;br /&gt;
|0x82cf&lt;br /&gt;
|0x80d5&lt;br /&gt;
|-&lt;br /&gt;
|takeweapon&lt;br /&gt;
|0x82d0&lt;br /&gt;
|0x80d6&lt;br /&gt;
|-&lt;br /&gt;
|takeallweapons&lt;br /&gt;
|0x82d1&lt;br /&gt;
|0x80d7&lt;br /&gt;
|-&lt;br /&gt;
|getcurrentweapon&lt;br /&gt;
|0x82d2&lt;br /&gt;
|0x80d8&lt;br /&gt;
|-&lt;br /&gt;
|getcurrentprimaryweapon&lt;br /&gt;
|0x82d3&lt;br /&gt;
|0x80d9&lt;br /&gt;
|-&lt;br /&gt;
|getcurrentoffhand&lt;br /&gt;
|0x82d4&lt;br /&gt;
|0x80da&lt;br /&gt;
|-&lt;br /&gt;
|hasweapon&lt;br /&gt;
|0x82d5&lt;br /&gt;
|0x80db&lt;br /&gt;
|-&lt;br /&gt;
|switchtoweapon&lt;br /&gt;
|0x82d6&lt;br /&gt;
|0x80dc&lt;br /&gt;
|-&lt;br /&gt;
|switchtoweaponimmediate&lt;br /&gt;
|0x82d7&lt;br /&gt;
|0x80dd&lt;br /&gt;
|-&lt;br /&gt;
|switchtooffhand&lt;br /&gt;
|0x82d8&lt;br /&gt;
|0x80de&lt;br /&gt;
|-&lt;br /&gt;
|givestartammo&lt;br /&gt;
|0x82f2&lt;br /&gt;
|0x80df&lt;br /&gt;
|-&lt;br /&gt;
|givemaxammo&lt;br /&gt;
|0x82f3&lt;br /&gt;
|0x80e0&lt;br /&gt;
|-&lt;br /&gt;
|getfractionstartammo&lt;br /&gt;
|0x82f4&lt;br /&gt;
|0x80e1&lt;br /&gt;
|-&lt;br /&gt;
|getfractionmaxammo&lt;br /&gt;
|0x82f5&lt;br /&gt;
|0x80e2&lt;br /&gt;
|-&lt;br /&gt;
|isdualwielding&lt;br /&gt;
|0x82f6&lt;br /&gt;
|0x80e3&lt;br /&gt;
|-&lt;br /&gt;
|isreloading&lt;br /&gt;
|0x82f7&lt;br /&gt;
|0x80e4&lt;br /&gt;
|-&lt;br /&gt;
|isswitchingweapon&lt;br /&gt;
|0x82f8&lt;br /&gt;
|0x80e5&lt;br /&gt;
|-&lt;br /&gt;
|setorigin&lt;br /&gt;
|0x82f9&lt;br /&gt;
|0x80e6&lt;br /&gt;
|-&lt;br /&gt;
|getvelocity&lt;br /&gt;
|0x82fa&lt;br /&gt;
|0x80e7&lt;br /&gt;
|-&lt;br /&gt;
|setplayerangles&lt;br /&gt;
|0x82fb&lt;br /&gt;
|0x80e8&lt;br /&gt;
|-&lt;br /&gt;
|getplayerangles&lt;br /&gt;
|0x82fc&lt;br /&gt;
|0x80e9&lt;br /&gt;
|-&lt;br /&gt;
|usebuttonpressed&lt;br /&gt;
|0x82fd&lt;br /&gt;
|0x80ea&lt;br /&gt;
|-&lt;br /&gt;
|attackbuttonpressed&lt;br /&gt;
|0x82fe&lt;br /&gt;
|0x80eb&lt;br /&gt;
|-&lt;br /&gt;
|adsbuttonpressed&lt;br /&gt;
|0x82ff&lt;br /&gt;
|0x80ec&lt;br /&gt;
|-&lt;br /&gt;
|meleebuttonpressed&lt;br /&gt;
|0x8300&lt;br /&gt;
|0x80ed&lt;br /&gt;
|-&lt;br /&gt;
|playerads&lt;br /&gt;
|0x8301&lt;br /&gt;
|0x80ee&lt;br /&gt;
|-&lt;br /&gt;
|isonground&lt;br /&gt;
|0x8302&lt;br /&gt;
|0x80ef&lt;br /&gt;
|-&lt;br /&gt;
|isusingturret&lt;br /&gt;
|0x8303&lt;br /&gt;
|0x80f0&lt;br /&gt;
|-&lt;br /&gt;
|setviewmodel&lt;br /&gt;
|0x8304&lt;br /&gt;
|0x80f1&lt;br /&gt;
|-&lt;br /&gt;
|setoffhandprimaryclass&lt;br /&gt;
|0x8305&lt;br /&gt;
|0x80f2&lt;br /&gt;
|-&lt;br /&gt;
|getoffhandprimaryclass&lt;br /&gt;
|0x8306&lt;br /&gt;
|0x80f3&lt;br /&gt;
|-&lt;br /&gt;
|setoffhandsecondaryclass&lt;br /&gt;
|0x82d9&lt;br /&gt;
|0x80f4&lt;br /&gt;
|-&lt;br /&gt;
|getoffhandsecondaryclass&lt;br /&gt;
|0x82da&lt;br /&gt;
|0x80f5&lt;br /&gt;
|-&lt;br /&gt;
|beginlocationselection&lt;br /&gt;
|0x82db&lt;br /&gt;
|0x80f6&lt;br /&gt;
|-&lt;br /&gt;
|endlocationselection&lt;br /&gt;
|0x82dc&lt;br /&gt;
|0x80f7&lt;br /&gt;
|-&lt;br /&gt;
|disableweapons&lt;br /&gt;
|0x82dd&lt;br /&gt;
|0x80f8&lt;br /&gt;
|-&lt;br /&gt;
|enableweapons&lt;br /&gt;
|0x82de&lt;br /&gt;
|0x80f9&lt;br /&gt;
|-&lt;br /&gt;
|disableoffhandweapons&lt;br /&gt;
|0x82df&lt;br /&gt;
|0x80fa&lt;br /&gt;
|-&lt;br /&gt;
|enableoffhandweapons&lt;br /&gt;
|0x82e0&lt;br /&gt;
|0x80fb&lt;br /&gt;
|-&lt;br /&gt;
|disableweaponswitch&lt;br /&gt;
|0x82e1&lt;br /&gt;
|0x80fc&lt;br /&gt;
|-&lt;br /&gt;
|enableweaponswitch&lt;br /&gt;
|0x82e2&lt;br /&gt;
|0x80fd&lt;br /&gt;
|-&lt;br /&gt;
|openpopupmenu&lt;br /&gt;
|0x82e3&lt;br /&gt;
|0x80fe&lt;br /&gt;
|-&lt;br /&gt;
|openpopupmenunomouse&lt;br /&gt;
|0x82e4&lt;br /&gt;
|0x80ff&lt;br /&gt;
|-&lt;br /&gt;
|closepopupmenu&lt;br /&gt;
|0x82e5&lt;br /&gt;
|0x8100&lt;br /&gt;
|-&lt;br /&gt;
|openmenu&lt;br /&gt;
|0x82e6&lt;br /&gt;
|0x8101&lt;br /&gt;
|-&lt;br /&gt;
|closemenu&lt;br /&gt;
|0x82e7&lt;br /&gt;
|0x8102&lt;br /&gt;
|-&lt;br /&gt;
|freezecontrols&lt;br /&gt;
|0x82e9&lt;br /&gt;
|0x8104&lt;br /&gt;
|-&lt;br /&gt;
|disableusability&lt;br /&gt;
|0x82ea&lt;br /&gt;
|0x8105&lt;br /&gt;
|-&lt;br /&gt;
|enableusability&lt;br /&gt;
|0x82eb&lt;br /&gt;
|0x8106&lt;br /&gt;
|-&lt;br /&gt;
|setwhizbyspreads&lt;br /&gt;
|0x82ec&lt;br /&gt;
|0x8107&lt;br /&gt;
|-&lt;br /&gt;
|setwhizbyradii&lt;br /&gt;
|0x82ed&lt;br /&gt;
|0x8108&lt;br /&gt;
|-&lt;br /&gt;
|setreverb&lt;br /&gt;
|0x82ee&lt;br /&gt;
|0x8109&lt;br /&gt;
|-&lt;br /&gt;
|deactivatereverb&lt;br /&gt;
|0x82ef&lt;br /&gt;
|0x810a&lt;br /&gt;
|-&lt;br /&gt;
|setvolmod&lt;br /&gt;
|0x82f0&lt;br /&gt;
|0x810b&lt;br /&gt;
|-&lt;br /&gt;
|setchannelvolume&lt;br /&gt;
|0x82f1&lt;br /&gt;
|0x810c&lt;br /&gt;
|-&lt;br /&gt;
|setchannelvolumes&lt;br /&gt;
|0x82b8&lt;br /&gt;
|0x810d&lt;br /&gt;
|-&lt;br /&gt;
|deactivatechannelvolumes&lt;br /&gt;
|0x82b9&lt;br /&gt;
|0x810e&lt;br /&gt;
|-&lt;br /&gt;
|playlocalsound&lt;br /&gt;
|0x82ba&lt;br /&gt;
|0x810f&lt;br /&gt;
|-&lt;br /&gt;
|stoplocalsound&lt;br /&gt;
|0x82bb&lt;br /&gt;
|0x8110&lt;br /&gt;
|-&lt;br /&gt;
|setweaponammoclip&lt;br /&gt;
|0x82bc&lt;br /&gt;
|0x8111&lt;br /&gt;
|-&lt;br /&gt;
|setweaponammostock&lt;br /&gt;
|0x82bd&lt;br /&gt;
|0x8112&lt;br /&gt;
|-&lt;br /&gt;
|getweaponammoclip&lt;br /&gt;
|0x82be&lt;br /&gt;
|0x8113&lt;br /&gt;
|-&lt;br /&gt;
|getweaponammostock&lt;br /&gt;
|0x82bf&lt;br /&gt;
|0x8114&lt;br /&gt;
|-&lt;br /&gt;
|anyammoforweaponmodes&lt;br /&gt;
|0x82c0&lt;br /&gt;
|0x8115&lt;br /&gt;
|-&lt;br /&gt;
|setclientdvar&lt;br /&gt;
|0x82c1&lt;br /&gt;
|0x8116&lt;br /&gt;
|-&lt;br /&gt;
|setclientdvars&lt;br /&gt;
|0x82c2&lt;br /&gt;
|0x8117&lt;br /&gt;
|-&lt;br /&gt;
|allowads&lt;br /&gt;
|0x82c3&lt;br /&gt;
|0x8118&lt;br /&gt;
|-&lt;br /&gt;
|allowjump&lt;br /&gt;
|0x82c4&lt;br /&gt;
|0x8119&lt;br /&gt;
|-&lt;br /&gt;
|allowsprint&lt;br /&gt;
|0x82c5&lt;br /&gt;
|0x811a&lt;br /&gt;
|-&lt;br /&gt;
|setspreadoverride&lt;br /&gt;
|0x82c6&lt;br /&gt;
|0x811b&lt;br /&gt;
|-&lt;br /&gt;
|resetspreadoverride&lt;br /&gt;
|0x82c7&lt;br /&gt;
|0x811c&lt;br /&gt;
|-&lt;br /&gt;
|setaimspreadmovementscale&lt;br /&gt;
|0x82c8&lt;br /&gt;
|0x811d&lt;br /&gt;
|-&lt;br /&gt;
|setactionslot&lt;br /&gt;
|0x82c9&lt;br /&gt;
|0x811e&lt;br /&gt;
|-&lt;br /&gt;
|setviewkickscale&lt;br /&gt;
|0x82ca&lt;br /&gt;
|0x811f&lt;br /&gt;
|-&lt;br /&gt;
|getviewkickscale&lt;br /&gt;
|0x82cb&lt;br /&gt;
|0x8120&lt;br /&gt;
|-&lt;br /&gt;
|getweaponslistall&lt;br /&gt;
|0x82cc&lt;br /&gt;
|0x8121&lt;br /&gt;
|-&lt;br /&gt;
|getweaponslistprimaries&lt;br /&gt;
|0x82cd&lt;br /&gt;
|0x8122&lt;br /&gt;
|-&lt;br /&gt;
|getweaponslistoffhands&lt;br /&gt;
|0x8296&lt;br /&gt;
|0x8123&lt;br /&gt;
|-&lt;br /&gt;
|getweaponslistitems&lt;br /&gt;
|0x8297&lt;br /&gt;
|0x8124&lt;br /&gt;
|-&lt;br /&gt;
|getweaponslistexclusives&lt;br /&gt;
|0x8298&lt;br /&gt;
|0x8125&lt;br /&gt;
|-&lt;br /&gt;
|getweaponslist&lt;br /&gt;
|0x8299&lt;br /&gt;
|0x8126&lt;br /&gt;
|-&lt;br /&gt;
|canplayerplacesentry&lt;br /&gt;
|0x829a&lt;br /&gt;
|0x8127&lt;br /&gt;
|-&lt;br /&gt;
|canplayerplacetank&lt;br /&gt;
|0x829b&lt;br /&gt;
|0x8128&lt;br /&gt;
|-&lt;br /&gt;
|visionsetnakedforplayer&lt;br /&gt;
|0x829c&lt;br /&gt;
|0x8129&lt;br /&gt;
|-&lt;br /&gt;
|visionsetnightforplayer&lt;br /&gt;
|0x829d&lt;br /&gt;
|0x812a&lt;br /&gt;
|-&lt;br /&gt;
|visionsetmissilecamforplayer&lt;br /&gt;
|0x829e&lt;br /&gt;
|0x812b&lt;br /&gt;
|-&lt;br /&gt;
|visionsetthermalforplayer&lt;br /&gt;
|0x829f&lt;br /&gt;
|0x812c&lt;br /&gt;
|-&lt;br /&gt;
|visionsetpainforplayer&lt;br /&gt;
|0x82a0&lt;br /&gt;
|0x812d&lt;br /&gt;
|-&lt;br /&gt;
|setblurforplayer&lt;br /&gt;
|0x82a1&lt;br /&gt;
|0x812e&lt;br /&gt;
|-&lt;br /&gt;
|getplayerweaponmodel&lt;br /&gt;
|0x82a2&lt;br /&gt;
|0x812f&lt;br /&gt;
|-&lt;br /&gt;
|getplayerknifemodel&lt;br /&gt;
|0x82a3&lt;br /&gt;
|0x8130&lt;br /&gt;
|-&lt;br /&gt;
|updateplayermodelwithweapons&lt;br /&gt;
|0x82a4&lt;br /&gt;
|0x8131&lt;br /&gt;
|-&lt;br /&gt;
|notifyonplayercommand&lt;br /&gt;
|0x82a5&lt;br /&gt;
|0x8132&lt;br /&gt;
|-&lt;br /&gt;
|canmantle&lt;br /&gt;
|0x82a6&lt;br /&gt;
|0x8133&lt;br /&gt;
|-&lt;br /&gt;
|forcemantle&lt;br /&gt;
|0x82a7&lt;br /&gt;
|0x8134&lt;br /&gt;
|-&lt;br /&gt;
|ismantling&lt;br /&gt;
|0x82a8&lt;br /&gt;
|0x8135&lt;br /&gt;
|-&lt;br /&gt;
|playfx&lt;br /&gt;
|0x82a9&lt;br /&gt;
|0x8136&lt;br /&gt;
|-&lt;br /&gt;
|recoilscaleon&lt;br /&gt;
|0x82aa&lt;br /&gt;
|0x8137&lt;br /&gt;
|-&lt;br /&gt;
|recoilscaleoff&lt;br /&gt;
|0x82ab&lt;br /&gt;
|0x8138&lt;br /&gt;
|-&lt;br /&gt;
|weaponlockstart&lt;br /&gt;
|0x82ac&lt;br /&gt;
|0x8139&lt;br /&gt;
|-&lt;br /&gt;
|weaponlockfinalize&lt;br /&gt;
|0x82ad&lt;br /&gt;
|0x813a&lt;br /&gt;
|-&lt;br /&gt;
|weaponlockfree&lt;br /&gt;
|0x82ae&lt;br /&gt;
|0x813b&lt;br /&gt;
|-&lt;br /&gt;
|weaponlocktargettooclose&lt;br /&gt;
|0x82af&lt;br /&gt;
|0x813c&lt;br /&gt;
|-&lt;br /&gt;
|weaponlocknoclearance&lt;br /&gt;
|0x826e&lt;br /&gt;
|0x813d&lt;br /&gt;
|-&lt;br /&gt;
|visionsyncwithplayer&lt;br /&gt;
|0x826f&lt;br /&gt;
|0x813e&lt;br /&gt;
|-&lt;br /&gt;
|showhudsplash&lt;br /&gt;
|0x8270&lt;br /&gt;
|0x813f&lt;br /&gt;
|-&lt;br /&gt;
|setperk&lt;br /&gt;
|0x8271&lt;br /&gt;
|0x8140&lt;br /&gt;
|-&lt;br /&gt;
|hasperk&lt;br /&gt;
|0x8272&lt;br /&gt;
|0x8141&lt;br /&gt;
|-&lt;br /&gt;
|clearperks&lt;br /&gt;
|0x8273&lt;br /&gt;
|0x8142&lt;br /&gt;
|-&lt;br /&gt;
|unsetperk&lt;br /&gt;
|0x8274&lt;br /&gt;
|0x8143&lt;br /&gt;
|-&lt;br /&gt;
|noclip&lt;br /&gt;
|0x8275&lt;br /&gt;
|0x8144&lt;br /&gt;
|-&lt;br /&gt;
|ufo&lt;br /&gt;
|0x8276&lt;br /&gt;
|0x8145&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- script ent --&amp;gt;&lt;br /&gt;
|moveto&lt;br /&gt;
|0x8277&lt;br /&gt;
|0x8146&lt;br /&gt;
|-&lt;br /&gt;
|movex&lt;br /&gt;
|0x8278&lt;br /&gt;
|0x8147&lt;br /&gt;
|-&lt;br /&gt;
|movey&lt;br /&gt;
|0x8279&lt;br /&gt;
|0x8148&lt;br /&gt;
|-&lt;br /&gt;
|movez&lt;br /&gt;
|0x827A&lt;br /&gt;
|0x8149&lt;br /&gt;
|-&lt;br /&gt;
|movegravity&lt;br /&gt;
|0x827B&lt;br /&gt;
|0x814A&lt;br /&gt;
|-&lt;br /&gt;
|moveslide&lt;br /&gt;
|0x827C&lt;br /&gt;
|0x814B&lt;br /&gt;
|-&lt;br /&gt;
|stopmoveslide&lt;br /&gt;
|0x827D&lt;br /&gt;
|0x814C&lt;br /&gt;
|-&lt;br /&gt;
|rotateto&lt;br /&gt;
|0x827E&lt;br /&gt;
|0x814D&lt;br /&gt;
|-&lt;br /&gt;
|rotatepitch&lt;br /&gt;
|0x827F&lt;br /&gt;
|0x814E&lt;br /&gt;
|-&lt;br /&gt;
|rotateyaw&lt;br /&gt;
|0x8280&lt;br /&gt;
|0x814F&lt;br /&gt;
|-&lt;br /&gt;
|rotateroll&lt;br /&gt;
|0x8281&lt;br /&gt;
|0x8150&lt;br /&gt;
|-&lt;br /&gt;
|addpitch&lt;br /&gt;
|0x8282&lt;br /&gt;
|0x8151&lt;br /&gt;
|-&lt;br /&gt;
|addyaw&lt;br /&gt;
|0x8283&lt;br /&gt;
|0x8152&lt;br /&gt;
|-&lt;br /&gt;
|addroll&lt;br /&gt;
|0x8284&lt;br /&gt;
|0x8153&lt;br /&gt;
|-&lt;br /&gt;
|vibrate&lt;br /&gt;
|0x8285&lt;br /&gt;
|0x8154&lt;br /&gt;
|-&lt;br /&gt;
|rotatevelocity&lt;br /&gt;
|0x8286&lt;br /&gt;
|0x8155&lt;br /&gt;
|-&lt;br /&gt;
|solid&lt;br /&gt;
|0x8287&lt;br /&gt;
|0x8156&lt;br /&gt;
|-&lt;br /&gt;
|notsolid&lt;br /&gt;
|0x8288&lt;br /&gt;
|0x8157&lt;br /&gt;
|-&lt;br /&gt;
|setcandamage&lt;br /&gt;
|0x8289&lt;br /&gt;
|0x8158&lt;br /&gt;
|-&lt;br /&gt;
|setcanradiusdamage&lt;br /&gt;
|0x828A&lt;br /&gt;
|0x8159&lt;br /&gt;
|-&lt;br /&gt;
|physicslaunchclient&lt;br /&gt;
|0x828B&lt;br /&gt;
|0x815A&lt;br /&gt;
|-&lt;br /&gt;
|physicslaunchserver&lt;br /&gt;
|0x8247&lt;br /&gt;
|0x815B&lt;br /&gt;
|-&lt;br /&gt;
|physicslaunchserveritem&lt;br /&gt;
|0x8248&lt;br /&gt;
|0x815C&lt;br /&gt;
|-&lt;br /&gt;
|clonebrushmodeltoscriptmodel&lt;br /&gt;
|0x8249&lt;br /&gt;
|0x815D&lt;br /&gt;
|-&lt;br /&gt;
|scriptmodelplayanim&lt;br /&gt;
|0x824A&lt;br /&gt;
|0x815E&lt;br /&gt;
|-&lt;br /&gt;
|scriptmodelclearanim&lt;br /&gt;
|0x824B&lt;br /&gt;
|0x815F&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- vehicle --&amp;gt;&lt;br /&gt;
|vehicle_teleport&lt;br /&gt;
|0x824C&lt;br /&gt;
|0x8160&lt;br /&gt;
|-&lt;br /&gt;
|attachpath&lt;br /&gt;
|0x824D&lt;br /&gt;
|0x8161&lt;br /&gt;
|-&lt;br /&gt;
|getattachpos&lt;br /&gt;
|0x824E&lt;br /&gt;
|0x8162&lt;br /&gt;
|-&lt;br /&gt;
|startpath&lt;br /&gt;
|0x824F&lt;br /&gt;
|0x8163&lt;br /&gt;
|-&lt;br /&gt;
|setswitchnode&lt;br /&gt;
|0x8250&lt;br /&gt;
|0x8164&lt;br /&gt;
|-&lt;br /&gt;
|setwaitspeed&lt;br /&gt;
|0x8251&lt;br /&gt;
|0x8165&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_finishdamage&lt;br /&gt;
|0x8252&lt;br /&gt;
|0x8166&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_setspeed&lt;br /&gt;
|0x8253&lt;br /&gt;
|0x8167&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_setspeedimmediate&lt;br /&gt;
|0x8254&lt;br /&gt;
|0x8168&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_rotateyaw&lt;br /&gt;
|0x8255&lt;br /&gt;
|0x8169&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_getspeed&lt;br /&gt;
|0x8256&lt;br /&gt;
|0x816a&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_getvelocity&lt;br /&gt;
|0x8257&lt;br /&gt;
|0x816b&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_getbodyvelocity&lt;br /&gt;
|0x8258&lt;br /&gt;
|0x816c&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_getsteering&lt;br /&gt;
|0x8259&lt;br /&gt;
|0x816d&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_getthrottle&lt;br /&gt;
|0x825A&lt;br /&gt;
|0x816e&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_turnengineoff&lt;br /&gt;
|0x825B&lt;br /&gt;
|0x816f&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_turnengineon&lt;br /&gt;
|0x825C&lt;br /&gt;
|0x8170&lt;br /&gt;
|-&lt;br /&gt;
|getgoalspeedmph&lt;br /&gt;
|0x825D&lt;br /&gt;
|0x8171&lt;br /&gt;
|-&lt;br /&gt;
|setacceleration&lt;br /&gt;
|0x825E&lt;br /&gt;
|0x8172&lt;br /&gt;
|-&lt;br /&gt;
|setdeceleration&lt;br /&gt;
|0x825F&lt;br /&gt;
|0x8173&lt;br /&gt;
|-&lt;br /&gt;
|resumespeed&lt;br /&gt;
|0x8260&lt;br /&gt;
|0x8174&lt;br /&gt;
|-&lt;br /&gt;
|setyawspeed&lt;br /&gt;
|0x8261&lt;br /&gt;
|0x8175&lt;br /&gt;
|-&lt;br /&gt;
|setyawspeedbyname&lt;br /&gt;
|0x8262&lt;br /&gt;
|0x8176&lt;br /&gt;
|-&lt;br /&gt;
|setmaxpitchroll&lt;br /&gt;
|0x8263&lt;br /&gt;
|0x8177&lt;br /&gt;
|-&lt;br /&gt;
|setairresistance&lt;br /&gt;
|0x8264&lt;br /&gt;
|0x8178&lt;br /&gt;
|-&lt;br /&gt;
|setturningability&lt;br /&gt;
|0x8265&lt;br /&gt;
|0x8179&lt;br /&gt;
|-&lt;br /&gt;
|setjitterparams&lt;br /&gt;
|0x8224&lt;br /&gt;
|0x817a&lt;br /&gt;
|-&lt;br /&gt;
|sethoverparams&lt;br /&gt;
|0x8225&lt;br /&gt;
|0x817b&lt;br /&gt;
|-&lt;br /&gt;
|joltbody&lt;br /&gt;
|0x8226&lt;br /&gt;
|0x817c&lt;br /&gt;
|-&lt;br /&gt;
|freevehicle&lt;br /&gt;
|0x8227&lt;br /&gt;
|0x817d&lt;br /&gt;
|-&lt;br /&gt;
|getwheelsurface&lt;br /&gt;
|0x8228&lt;br /&gt;
|0x817e&lt;br /&gt;
|-&lt;br /&gt;
|getvehicleowner&lt;br /&gt;
|0x8229&lt;br /&gt;
|0x817f&lt;br /&gt;
|-&lt;br /&gt;
|setvehiclelookattext&lt;br /&gt;
|0x822A&lt;br /&gt;
|0x8180&lt;br /&gt;
|-&lt;br /&gt;
|setvehicleteam&lt;br /&gt;
|0x822B&lt;br /&gt;
|0x8181&lt;br /&gt;
|-&lt;br /&gt;
|setneargoalnotifydist&lt;br /&gt;
|0x822C&lt;br /&gt;
|0x8182&lt;br /&gt;
|-&lt;br /&gt;
|setvehgoalpos&lt;br /&gt;
|0x822D&lt;br /&gt;
|0x8183&lt;br /&gt;
|-&lt;br /&gt;
|setgoalyaw&lt;br /&gt;
|0x822E&lt;br /&gt;
|0x8184&lt;br /&gt;
|-&lt;br /&gt;
|cleargoalyaw&lt;br /&gt;
|0x822F&lt;br /&gt;
|0x8185&lt;br /&gt;
|-&lt;br /&gt;
|settargetyaw&lt;br /&gt;
|0x8230&lt;br /&gt;
|0x8186&lt;br /&gt;
|-&lt;br /&gt;
|cleartargetyaw&lt;br /&gt;
|0x8231&lt;br /&gt;
|0x8187&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_helisetai&lt;br /&gt;
|0x8232&lt;br /&gt;
|0x8188&lt;br /&gt;
|-&lt;br /&gt;
|setturrettargetvec&lt;br /&gt;
|0x8233&lt;br /&gt;
|0x8189&lt;br /&gt;
|-&lt;br /&gt;
|setturrettargetent&lt;br /&gt;
|0x8234&lt;br /&gt;
|0x818a&lt;br /&gt;
|-&lt;br /&gt;
|clearturrettarget&lt;br /&gt;
|0x8235&lt;br /&gt;
|0x818b&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_canturrettargetpoint&lt;br /&gt;
|0x8236&lt;br /&gt;
|0x818c&lt;br /&gt;
|-&lt;br /&gt;
|setlookatent&lt;br /&gt;
|0x8237&lt;br /&gt;
|0x818d&lt;br /&gt;
|-&lt;br /&gt;
|clearlookatent&lt;br /&gt;
|0x8238&lt;br /&gt;
|0x818e&lt;br /&gt;
|-&lt;br /&gt;
|setvehweapon&lt;br /&gt;
|0x8239&lt;br /&gt;
|0x818f&lt;br /&gt;
|-&lt;br /&gt;
|fireweapon&lt;br /&gt;
|0x823A&lt;br /&gt;
|0x8190&lt;br /&gt;
|-&lt;br /&gt;
|vehicleturretcontrolon&lt;br /&gt;
|0x823B&lt;br /&gt;
|0x8191&lt;br /&gt;
|-&lt;br /&gt;
|vehicleturretcontroloff&lt;br /&gt;
|0x8200&lt;br /&gt;
|0x8192&lt;br /&gt;
|-&lt;br /&gt;
|isturretready&lt;br /&gt;
|0x8201&lt;br /&gt;
|0x8193&lt;br /&gt;
|-&lt;br /&gt;
|vehicledriveto&lt;br /&gt;
|0x8202&lt;br /&gt;
|0x8194&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_dospawn&lt;br /&gt;
|0x8203&lt;br /&gt;
|0x8195&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_isphysveh&lt;br /&gt;
|0x8204&lt;br /&gt;
|0x8196&lt;br /&gt;
|-&lt;br /&gt;
|vehphys_crash&lt;br /&gt;
|0x8205&lt;br /&gt;
|0x8197&lt;br /&gt;
|-&lt;br /&gt;
|vehphys_launch&lt;br /&gt;
|0x8206&lt;br /&gt;
|0x8198&lt;br /&gt;
|-&lt;br /&gt;
|vehphys_disablecrashing&lt;br /&gt;
|0x8207&lt;br /&gt;
|0x8199&lt;br /&gt;
|-&lt;br /&gt;
|vehphys_enablecrashing&lt;br /&gt;
|0x8208&lt;br /&gt;
|0x819a&lt;br /&gt;
|-&lt;br /&gt;
|vehphys_setspeed&lt;br /&gt;
|0x8209&lt;br /&gt;
|0x819b&lt;br /&gt;
|-&lt;br /&gt;
|vehphys_setconveyorbelt&lt;br /&gt;
|0x820A&lt;br /&gt;
|0x819c&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- helicopter --&amp;gt;&lt;br /&gt;
|freehelicopter&lt;br /&gt;
|0x820B&lt;br /&gt;
|0x819D&lt;br /&gt;
|-&lt;br /&gt;
|setdamagestage&lt;br /&gt;
|0x8002&lt;br /&gt;
|0x82F2&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- hud element --&amp;gt;&lt;br /&gt;
|settext&lt;br /&gt;
|0x80b6&lt;br /&gt;
|0x827d&lt;br /&gt;
|-&lt;br /&gt;
|clearalltextafterhudelem&lt;br /&gt;
|0x80b7&lt;br /&gt;
|0x827e&lt;br /&gt;
|-&lt;br /&gt;
|setshader&lt;br /&gt;
|0x80b8&lt;br /&gt;
|0x827f&lt;br /&gt;
|-&lt;br /&gt;
|settargetent&lt;br /&gt;
|0x80b9&lt;br /&gt;
|0x8280&lt;br /&gt;
|-&lt;br /&gt;
|cleartargetent&lt;br /&gt;
|0x80ba&lt;br /&gt;
|0x8281&lt;br /&gt;
|-&lt;br /&gt;
|settimer&lt;br /&gt;
|0x80bb&lt;br /&gt;
|0x8282&lt;br /&gt;
|-&lt;br /&gt;
|settimerup&lt;br /&gt;
|0x80bc&lt;br /&gt;
|0x8283&lt;br /&gt;
|-&lt;br /&gt;
|settimerstatic&lt;br /&gt;
|0x80bd&lt;br /&gt;
|0x8284&lt;br /&gt;
|-&lt;br /&gt;
|settenthstimer&lt;br /&gt;
|0x80be&lt;br /&gt;
|0x8285&lt;br /&gt;
|-&lt;br /&gt;
|settenthstimerup&lt;br /&gt;
|0x80bf&lt;br /&gt;
|0x8286&lt;br /&gt;
|-&lt;br /&gt;
|settenthstimerstatic&lt;br /&gt;
|0x80c0&lt;br /&gt;
|0x8287&lt;br /&gt;
|-&lt;br /&gt;
|setclock&lt;br /&gt;
|0x80c1&lt;br /&gt;
|0x8288&lt;br /&gt;
|-&lt;br /&gt;
|setclockup&lt;br /&gt;
|0x80c2&lt;br /&gt;
|0x8289&lt;br /&gt;
|-&lt;br /&gt;
|setvalue&lt;br /&gt;
|0x80c3&lt;br /&gt;
|0x828a&lt;br /&gt;
|-&lt;br /&gt;
|setwaypoint&lt;br /&gt;
|0x80c4&lt;br /&gt;
|0x828b&lt;br /&gt;
|-&lt;br /&gt;
|rotatingicon&lt;br /&gt;
|0x80c5&lt;br /&gt;
|0x828c&lt;br /&gt;
|-&lt;br /&gt;
|secondaryarrow&lt;br /&gt;
|0x807b&lt;br /&gt;
|0x828d&lt;br /&gt;
|-&lt;br /&gt;
|setwaypointiconoffscreenonly&lt;br /&gt;
|0x807c&lt;br /&gt;
|0x828e&lt;br /&gt;
|-&lt;br /&gt;
|fadeovertime&lt;br /&gt;
|0x807d&lt;br /&gt;
|0x828f&lt;br /&gt;
|-&lt;br /&gt;
|scaleovertime&lt;br /&gt;
|0x807e&lt;br /&gt;
|0x8290&lt;br /&gt;
|-&lt;br /&gt;
|moveovertime&lt;br /&gt;
|0x807f&lt;br /&gt;
|0x8291&lt;br /&gt;
|-&lt;br /&gt;
|reset&lt;br /&gt;
|0x8080&lt;br /&gt;
|0x8292&lt;br /&gt;
|-&lt;br /&gt;
|destroy&lt;br /&gt;
|0x8081&lt;br /&gt;
|0x8293&lt;br /&gt;
|-&lt;br /&gt;
|setpulsefx&lt;br /&gt;
|0x8082&lt;br /&gt;
|0x8294&lt;br /&gt;
|-&lt;br /&gt;
|setplayernamestring&lt;br /&gt;
|0x8083&lt;br /&gt;
|0x8295&lt;br /&gt;
|-&lt;br /&gt;
|changefontscaleovertime&lt;br /&gt;
|N/A&lt;br /&gt;
|0x8296&lt;br /&gt;
|-&lt;br /&gt;
|fadeovertime2&lt;br /&gt;
|0x830b&lt;br /&gt;
|N/A&lt;br /&gt;
|-&lt;br /&gt;
|scaleovertime2&lt;br /&gt;
|0x830c&lt;br /&gt;
|N/A&lt;br /&gt;
|-&lt;br /&gt;
|moveovertime2&lt;br /&gt;
|0x8084&lt;br /&gt;
|N/A&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- client? --&amp;gt;&lt;br /&gt;
|getorigin&lt;br /&gt;
|0x808E&lt;br /&gt;
|0x82a0&lt;br /&gt;
|-&lt;br /&gt;
|useby&lt;br /&gt;
|0x8092&lt;br /&gt;
|0x82a4&lt;br /&gt;
|-&lt;br /&gt;
|playsound&lt;br /&gt;
|0x8093&lt;br /&gt;
|0x82a5&lt;br /&gt;
|-&lt;br /&gt;
|playsoundasmaster&lt;br /&gt;
|0x806E&lt;br /&gt;
|0x82af&lt;br /&gt;
|-&lt;br /&gt;
|playsoundtoteam&lt;br /&gt;
|0x8003&lt;br /&gt;
|0x82f3&lt;br /&gt;
|-&lt;br /&gt;
|playsoundtoplayer&lt;br /&gt;
|0x8004&lt;br /&gt;
|0x82f4&lt;br /&gt;
|-&lt;br /&gt;
|playloopsound&lt;br /&gt;
|0x806F&lt;br /&gt;
|0x82b0&lt;br /&gt;
|-&lt;br /&gt;
|getnormalhealth&lt;br /&gt;
|0x8074&lt;br /&gt;
|0x82b5&lt;br /&gt;
|-&lt;br /&gt;
|setnormalhealth&lt;br /&gt;
|0x804C&lt;br /&gt;
|0x82b6&lt;br /&gt;
|-&lt;br /&gt;
|show&lt;br /&gt;
|0x804F&lt;br /&gt;
|0x82b9&lt;br /&gt;
|-&lt;br /&gt;
|hide&lt;br /&gt;
|0x8050&lt;br /&gt;
|0x82ba&lt;br /&gt;
|-&lt;br /&gt;
|playerhide&lt;br /&gt;
|0x8005&lt;br /&gt;
|0x82f5&lt;br /&gt;
|-&lt;br /&gt;
|showtoplayer&lt;br /&gt;
|0x8006&lt;br /&gt;
|0x82f6&lt;br /&gt;
|-&lt;br /&gt;
|enableplayeruse&lt;br /&gt;
|0x8007&lt;br /&gt;
|0x82f7&lt;br /&gt;
|-&lt;br /&gt;
|disableplayeruse&lt;br /&gt;
|0x8008&lt;br /&gt;
|0x82f8&lt;br /&gt;
|-&lt;br /&gt;
|setscriptmoverkillcam&lt;br /&gt;
|0x830A&lt;br /&gt;
|0x830a&lt;br /&gt;
|-&lt;br /&gt;
|makescrambler&lt;br /&gt;
|0x8009&lt;br /&gt;
|0x82f9&lt;br /&gt;
|-&lt;br /&gt;
|makeportableradar&lt;br /&gt;
|0x800A&lt;br /&gt;
|0x82fa&lt;br /&gt;
|-&lt;br /&gt;
|maketrophysystem&lt;br /&gt;
|0x800B&lt;br /&gt;
|0x82fb&lt;br /&gt;
|-&lt;br /&gt;
|setmode&lt;br /&gt;
|0x8060&lt;br /&gt;
|0x82ca&lt;br /&gt;
|-&lt;br /&gt;
|getmode&lt;br /&gt;
|0x8061&lt;br /&gt;
|0x82cb&lt;br /&gt;
|-&lt;br /&gt;
|placespawnpoint&lt;br /&gt;
|0x800C&lt;br /&gt;
|0x82fc&lt;br /&gt;
|-&lt;br /&gt;
|setteamfortrigger&lt;br /&gt;
|0x800D&lt;br /&gt;
|0x82fd&lt;br /&gt;
|-&lt;br /&gt;
|clientclaimtrigger&lt;br /&gt;
|0x800E&lt;br /&gt;
|0x82fe&lt;br /&gt;
|-&lt;br /&gt;
|clientreleasetrigger&lt;br /&gt;
|0x800F&lt;br /&gt;
|0x82ff&lt;br /&gt;
|-&lt;br /&gt;
|releaseclaimedtrigger&lt;br /&gt;
|0x8010&lt;br /&gt;
|0x8300&lt;br /&gt;
|-&lt;br /&gt;
|isusingonlinedataoffline&lt;br /&gt;
|0x8011&lt;br /&gt;
|0x8301&lt;br /&gt;
|-&lt;br /&gt;
|getrestedtime&lt;br /&gt;
|0x8012&lt;br /&gt;
|0x8302&lt;br /&gt;
|-&lt;br /&gt;
|sendleaderboards&lt;br /&gt;
|0x8013&lt;br /&gt;
|0x8303&lt;br /&gt;
|-&lt;br /&gt;
|logstring&lt;br /&gt;
|0x8020&lt;br /&gt;
|0x82ec&lt;br /&gt;
|-&lt;br /&gt;
|isonladder&lt;br /&gt;
|0x8014&lt;br /&gt;
|0x8304&lt;br /&gt;
|-&lt;br /&gt;
|startragdoll&lt;br /&gt;
|0x801E&lt;br /&gt;
|0x82ea&lt;br /&gt;
|-&lt;br /&gt;
|getcorpseanim&lt;br /&gt;
|0x8015&lt;br /&gt;
|0x8305&lt;br /&gt;
|-&lt;br /&gt;
|playerforcedeathanim&lt;br /&gt;
|0x8016&lt;br /&gt;
|0x8306&lt;br /&gt;
|-&lt;br /&gt;
|startac130&lt;br /&gt;
|0x8307&lt;br /&gt;
|0x8307&lt;br /&gt;
|-&lt;br /&gt;
|stopac130&lt;br /&gt;
|0x8308&lt;br /&gt;
|0x8308&lt;br /&gt;
|}&lt;br /&gt;
=== OP_ScriptLocal Calls ===&lt;br /&gt;
These opcodes are used to make local calls to functions or methods in the same script file. After the opcode is a signed 24 bit integer. After casting to a 32 bit integer, it is shifted to the left 8 bits and then to the right 10 bits to get the true offset. For threaded calls (OP_ScriptLocalThreadCall - OP_ScriptLocalMethodChildThreadCall), the parameter count is loaded afterwards as an 8 bit integer.&lt;br /&gt;
=== OP_ScriptFar Calls ===&lt;br /&gt;
These opcodes are used to make far calls to functions or methods in an external script file. During link-time the file name and the function name is used to create the offset. The file name &#039;&#039;&#039;is loaded from the buffer&#039;&#039;&#039; as a 16 bit value. If this value &#039;&#039;&#039;is not&#039;&#039;&#039; equal to zero, then this value is converted to a string, which is the file name. If this value &#039;&#039;&#039;is&#039;&#039;&#039; equal to zero, then a string is loaded afterwards, which is the file name. The function it calls is also loaded &#039;&#039;&#039;in the the buffer&#039;&#039;&#039; as another 16 bit value, and its name is loaded the same way as the file name. After being linked the offset is stored after the opcode as a 24 bit integer. After casting to a 32 bit integer, it is shifted to the left 8 bits and then to the right 10 bits to get the true offset. For threaded calls (OP_ScriptFarThreadCall - OP_ScriptFarMethodChildThreadCall), the parameter count is loaded afterwards as an 8 bit integer.&lt;br /&gt;
=== OP_Script Pointer Calls ===&lt;br /&gt;
These opcodes load a pointer from the stack and simply jump to them. For threaded calls (OP_ScriptThreadCallPointer - OP_ScriptMethodChildThreadCallPointer), the parameter count is loaded afterwards as an 8 bit integer.&lt;br /&gt;
&lt;br /&gt;
== Field IDs ==&lt;br /&gt;
In Ghosts and AW, fields have been sorted alphabetically and were then enumerated. This way, fields starting with the letter a such as &amp;quot;alignx&amp;quot; have got the lowest field ids.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Client Fields&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!rowspan=&amp;quot;2&amp;quot;|Field&lt;br /&gt;
!colspan=&amp;quot;1&amp;quot;|MW3&lt;br /&gt;
!colspan=&amp;quot;1&amp;quot;|AW&lt;br /&gt;
|-&lt;br /&gt;
!PS3 ID&lt;br /&gt;
!PS3 ID&lt;br /&gt;
|-&lt;br /&gt;
| name&lt;br /&gt;
| 0x2D1&lt;br /&gt;
| 0x2AF&lt;br /&gt;
|-&lt;br /&gt;
| sessionteam  &lt;br /&gt;
| 0x2D2&lt;br /&gt;
| 0x3C1&lt;br /&gt;
|-&lt;br /&gt;
| sessionstate&lt;br /&gt;
| 0x2D3&lt;br /&gt;
| 0x3C0&lt;br /&gt;
|-&lt;br /&gt;
| maxhealth&lt;br /&gt;
| 0x2D4&lt;br /&gt;
| 0x279&lt;br /&gt;
|-&lt;br /&gt;
| score&lt;br /&gt;
| 0x2D5&lt;br /&gt;
| 0x394&lt;br /&gt;
|-&lt;br /&gt;
| deaths&lt;br /&gt;
| 0x2D6&lt;br /&gt;
| 0x112&lt;br /&gt;
|-&lt;br /&gt;
| extrascore0&lt;br /&gt;
|&lt;br /&gt;
| 0x16D&lt;br /&gt;
|-&lt;br /&gt;
| extrascore1&lt;br /&gt;
|&lt;br /&gt;
| 0x16E&lt;br /&gt;
|-&lt;br /&gt;
| killstreakcount&lt;br /&gt;
|&lt;br /&gt;
| 0x242&lt;br /&gt;
|-&lt;br /&gt;
| objective&lt;br /&gt;
|&lt;br /&gt;
| 0x2DA&lt;br /&gt;
|-&lt;br /&gt;
| statusicon&lt;br /&gt;
| 0x2D7&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| headicon&lt;br /&gt;
| 0x2D8&lt;br /&gt;
| 0x1E8&lt;br /&gt;
|-&lt;br /&gt;
| headiconteam&lt;br /&gt;
| 0x2D9&lt;br /&gt;
| 0x1E9&lt;br /&gt;
|-&lt;br /&gt;
| kills&lt;br /&gt;
| 0x2DB&lt;br /&gt;
| 0x240&lt;br /&gt;
|-&lt;br /&gt;
| assists&lt;br /&gt;
| 0x2DC&lt;br /&gt;
| 0x53&lt;br /&gt;
|-&lt;br /&gt;
| hasradar&lt;br /&gt;
| 0x2DD&lt;br /&gt;
| 0x1E4&lt;br /&gt;
|-&lt;br /&gt;
| isradarblocked &lt;br /&gt;
| 0x2DE&lt;br /&gt;
| 0x217&lt;br /&gt;
|-&lt;br /&gt;
| radarstrength&lt;br /&gt;
| 0x2DF&lt;br /&gt;
| 0x357&lt;br /&gt;
|-&lt;br /&gt;
| radarshowenemydirection&lt;br /&gt;
| 0x2E0&lt;br /&gt;
| 0x356&lt;br /&gt;
|-&lt;br /&gt;
| radarmode&lt;br /&gt;
| 0x2E1&lt;br /&gt;
| 0x355&lt;br /&gt;
|-&lt;br /&gt;
| enemyradarmode&lt;br /&gt;
|&lt;br /&gt;
| 0x14D&lt;br /&gt;
|-&lt;br /&gt;
| forcespectatorclient&lt;br /&gt;
| 0x2E2&lt;br /&gt;
| 0x19C&lt;br /&gt;
|-&lt;br /&gt;
| killcamentity&lt;br /&gt;
| 0x2E3&lt;br /&gt;
| 0x23E&lt;br /&gt;
|-&lt;br /&gt;
| killcamentitylookat&lt;br /&gt;
| 0x2E4&lt;br /&gt;
| 0x23F&lt;br /&gt;
|-&lt;br /&gt;
| spectatekillcam&lt;br /&gt;
|&lt;br /&gt;
| 0x3E3&lt;br /&gt;
|-&lt;br /&gt;
| archivetime&lt;br /&gt;
| 0x2E5&lt;br /&gt;
| 0x4D&lt;br /&gt;
|-&lt;br /&gt;
| psoffsettime &lt;br /&gt;
| 0x2E6&lt;br /&gt;
| 0x352&lt;br /&gt;
|-&lt;br /&gt;
| pers&lt;br /&gt;
| 0x2E7&lt;br /&gt;
| 0x311&lt;br /&gt;
|-&lt;br /&gt;
| game_extrainfo&lt;br /&gt;
|&lt;br /&gt;
| 0x1B5&lt;br /&gt;
|-&lt;br /&gt;
| playercardpatch&lt;br /&gt;
|&lt;br /&gt;
| 0x325&lt;br /&gt;
|-&lt;br /&gt;
| playercardbackground&lt;br /&gt;
|&lt;br /&gt;
| 0x324&lt;br /&gt;
|}&lt;br /&gt;
&#039;&#039;&#039;Entity Fields&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot;|Field&lt;br /&gt;
! colspan=&amp;quot;1&amp;quot;|MW3&lt;br /&gt;
! colspan=&amp;quot;1&amp;quot;|AW&lt;br /&gt;
|-&lt;br /&gt;
! PS3 ID&lt;br /&gt;
! PS3 ID&lt;br /&gt;
|-&lt;br /&gt;
| code_classname&lt;br /&gt;
| 0x2C3&lt;br /&gt;
| 0xB1&lt;br /&gt;
|-&lt;br /&gt;
| classname&lt;br /&gt;
| 0x2C4&lt;br /&gt;
| 0xAF&lt;br /&gt;
|-&lt;br /&gt;
| origin&lt;br /&gt;
| 0x2C5&lt;br /&gt;
| 0x2EA&lt;br /&gt;
|-&lt;br /&gt;
| model&lt;br /&gt;
| 0x2C6&lt;br /&gt;
| 0x2A4&lt;br /&gt;
|-&lt;br /&gt;
| spawnflags&lt;br /&gt;
| 0x2C7&lt;br /&gt;
| 0x3DF&lt;br /&gt;
|-&lt;br /&gt;
| target&lt;br /&gt;
| 0x2C8&lt;br /&gt;
| 0x4A9&lt;br /&gt;
|-&lt;br /&gt;
| targetname&lt;br /&gt;
| 0x2C9&lt;br /&gt;
| 0x4AB&lt;br /&gt;
|-&lt;br /&gt;
| count&lt;br /&gt;
| 0x2CA&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| health&lt;br /&gt;
| 0x2CB&lt;br /&gt;
| 0x1EB&lt;br /&gt;
|-&lt;br /&gt;
| dmg&lt;br /&gt;
| 0x2CC&lt;br /&gt;
| 0x12A&lt;br /&gt;
|-&lt;br /&gt;
| angles&lt;br /&gt;
| 0x2CD&lt;br /&gt;
| 0x45&lt;br /&gt;
|-&lt;br /&gt;
| birthtime&lt;br /&gt;
| 0x2CE&lt;br /&gt;
| 0x81&lt;br /&gt;
|-&lt;br /&gt;
| script_linkname&lt;br /&gt;
| 0x2CF&lt;br /&gt;
| 0x39D&lt;br /&gt;
|-&lt;br /&gt;
| slidevelocity&lt;br /&gt;
| 0x2D0&lt;br /&gt;
| 0x3D0&lt;br /&gt;
|-&lt;br /&gt;
| owner&lt;br /&gt;
| &lt;br /&gt;
| 0x2ED&lt;br /&gt;
|}&lt;br /&gt;
&#039;&#039;&#039;Vehicle Script Fields&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot;|Field&lt;br /&gt;
! colspan=&amp;quot;1&amp;quot;|MW3&lt;br /&gt;
! colspan=&amp;quot;1&amp;quot;|Ghosts&lt;br /&gt;
! colspan=&amp;quot;1&amp;quot;|AW&lt;br /&gt;
|-&lt;br /&gt;
! PS3 ID&lt;br /&gt;
! PC ID&lt;br /&gt;
! PS3 ID&lt;br /&gt;
|-&lt;br /&gt;
| veh_speed || 0x2FF || 0x2B9 || 0x4FC&lt;br /&gt;
|-&lt;br /&gt;
| veh_pathspeed || 0x300 || 0x2B6 || 0x4F9 &lt;br /&gt;
|-&lt;br /&gt;
| veh_transmission || 0x301 || 0x2BC || 0x4FF &lt;br /&gt;
|-&lt;br /&gt;
| veh_pathdir || 0x302 || 0x2B5 || 0x4F8 &lt;br /&gt;
|-&lt;br /&gt;
| veh_pathtype || 0x303 || 0x2B7 || 0x4FA &lt;br /&gt;
|-&lt;br /&gt;
| veh_topspeed || 0x304 || 0x2BB || 0x4FE &lt;br /&gt;
|-&lt;br /&gt;
| veh_brake || 0x305 || 0x2B0 || 0x4F2 &lt;br /&gt;
|-&lt;br /&gt;
| veh_throttle || 0x306 || 0x2BA || 0x4FD &lt;br /&gt;
|}&lt;br /&gt;
&#039;&#039;&#039;Hudelem Fields&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot;|Field&lt;br /&gt;
! colspan=&amp;quot;1&amp;quot;|MW3&lt;br /&gt;
! colspan=&amp;quot;1&amp;quot;|AW&lt;br /&gt;
|-&lt;br /&gt;
! PS3 ID&lt;br /&gt;
! PS3 ID&lt;br /&gt;
|-&lt;br /&gt;
| x&lt;br /&gt;
| 0x2E8&lt;br /&gt;
| 0x534&lt;br /&gt;
|-&lt;br /&gt;
| y&lt;br /&gt;
| 0x2E9&lt;br /&gt;
| 0x53C&lt;br /&gt;
|-&lt;br /&gt;
| z&lt;br /&gt;
| 0x2EA&lt;br /&gt;
| 0x53F&lt;br /&gt;
|-&lt;br /&gt;
| fontscale&lt;br /&gt;
| 0x2EB&lt;br /&gt;
| 0x190&lt;br /&gt;
|-&lt;br /&gt;
| font&lt;br /&gt;
| 0x2EC&lt;br /&gt;
| 0x18F&lt;br /&gt;
|-&lt;br /&gt;
| alignx&lt;br /&gt;
| 0x2ED&lt;br /&gt;
| 0x30&lt;br /&gt;
|-&lt;br /&gt;
| aligny&lt;br /&gt;
| 0x2EE&lt;br /&gt;
| 0x31&lt;br /&gt;
|-&lt;br /&gt;
| horzalign&lt;br /&gt;
| 0x2EF&lt;br /&gt;
| 0x1F8&lt;br /&gt;
|-&lt;br /&gt;
| vertalign&lt;br /&gt;
| 0x2F0&lt;br /&gt;
| 0x504&lt;br /&gt;
|-&lt;br /&gt;
| color&lt;br /&gt;
| 0x2F1&lt;br /&gt;
| 0xC9&lt;br /&gt;
|-&lt;br /&gt;
| alpha &lt;br /&gt;
| 0x2F2&lt;br /&gt;
| 0x3B&lt;br /&gt;
|-&lt;br /&gt;
| label &lt;br /&gt;
| 0x2F3&lt;br /&gt;
| 0x249&lt;br /&gt;
|-&lt;br /&gt;
| sort &lt;br /&gt;
| 0x2F4&lt;br /&gt;
| 0x3D9&lt;br /&gt;
|-&lt;br /&gt;
| foreground &lt;br /&gt;
| 0x2F5&lt;br /&gt;
| 0x19E&lt;br /&gt;
|-&lt;br /&gt;
| lowresbackground &lt;br /&gt;
| 0x2F6&lt;br /&gt;
| 0x26B&lt;br /&gt;
|-&lt;br /&gt;
| hidewhendead &lt;br /&gt;
| 0x2F7&lt;br /&gt;
| 0x1F0&lt;br /&gt;
|-&lt;br /&gt;
| hidewheninmenu &lt;br /&gt;
| 0x2F8&lt;br /&gt;
| 0x1F2&lt;br /&gt;
|-&lt;br /&gt;
| glowcolor &lt;br /&gt;
| 0x2FA&lt;br /&gt;
| 0x1C4&lt;br /&gt;
|-&lt;br /&gt;
| glowalpha &lt;br /&gt;
| 0x2FB&lt;br /&gt;
| 0x8C&lt;br /&gt;
|-&lt;br /&gt;
| archived &lt;br /&gt;
| 0x2FC&lt;br /&gt;
| 0x4C&lt;br /&gt;
|-&lt;br /&gt;
| showinkillcam&lt;br /&gt;
|&lt;br /&gt;
| 0x3C8&lt;br /&gt;
|-&lt;br /&gt;
| hidein3rdperson &lt;br /&gt;
| 0x2FD&lt;br /&gt;
| 0x1EF&lt;br /&gt;
|-&lt;br /&gt;
| positioninworld&lt;br /&gt;
|&lt;br /&gt;
| 0x333&lt;br /&gt;
|-&lt;br /&gt;
| hidewhenindemo &lt;br /&gt;
| 0x2FE&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| enablehudlighting&lt;br /&gt;
|&lt;br /&gt;
| 0x140&lt;br /&gt;
|}&lt;br /&gt;
&#039;&#039;&#039;Vehicle Node Fields&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!rowspan=&amp;quot;2&amp;quot;|Field&lt;br /&gt;
!colspan=&amp;quot;1&amp;quot;|MW3&lt;br /&gt;
!colspan=&amp;quot;1&amp;quot;|AW&lt;br /&gt;
|-&lt;br /&gt;
!PS3 ID&lt;br /&gt;
!PS3 ID&lt;br /&gt;
|-&lt;br /&gt;
| targetname&lt;br /&gt;
| 0x2C9&lt;br /&gt;
| 0x4AB&lt;br /&gt;
|-&lt;br /&gt;
| target&lt;br /&gt;
| 0x2C8&lt;br /&gt;
| 0x4A9&lt;br /&gt;
|-&lt;br /&gt;
| script_linkname&lt;br /&gt;
| 0x2CF&lt;br /&gt;
| 0x39D&lt;br /&gt;
|-&lt;br /&gt;
| script_noteworthy&lt;br /&gt;
| 0x307&lt;br /&gt;
| 0x39F&lt;br /&gt;
|-&lt;br /&gt;
| origin&lt;br /&gt;
| 0x2C5&lt;br /&gt;
| 0x2EA&lt;br /&gt;
|-&lt;br /&gt;
| angles&lt;br /&gt;
| 0x2CD&lt;br /&gt;
| 0x45&lt;br /&gt;
|-&lt;br /&gt;
| speed&lt;br /&gt;
| 0x308&lt;br /&gt;
| 0x3E7&lt;br /&gt;
|-&lt;br /&gt;
| lookahead&lt;br /&gt;
|  0x309&lt;br /&gt;
| 0x25F&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Therifboy</name></author>
	</entry>
	<entry>
		<id>https://codresearch.dev/index.php?title=Menu_Asset_(BO2)&amp;diff=820</id>
		<title>Menu Asset (BO2)</title>
		<link rel="alternate" type="text/html" href="https://codresearch.dev/index.php?title=Menu_Asset_(BO2)&amp;diff=820"/>
		<updated>2015-01-12T15:05:22Z</updated>

		<summary type="html">&lt;p&gt;Therifboy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Assets]]&lt;br /&gt;
[[Category:BO2]]&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
enum expDataType&lt;br /&gt;
{&lt;br /&gt;
  VAL_INT = 0x0,&lt;br /&gt;
  VAL_FLOAT = 0x1,&lt;br /&gt;
  VAL_STRING = 0x2,&lt;br /&gt;
  VAL_ADDRESS = 0x3,&lt;br /&gt;
  VAL_DVAR = 0x4,&lt;br /&gt;
};&lt;br /&gt;
union operandInternalDataUnion&lt;br /&gt;
{&lt;br /&gt;
  int intVal;&lt;br /&gt;
  float floatVal;&lt;br /&gt;
  const char *string;&lt;br /&gt;
  dvar_t *dvar;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct Operand&lt;br /&gt;
{&lt;br /&gt;
  expDataType dataType;&lt;br /&gt;
  operandInternalDataUnion internals;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
enum expOperationEnum&lt;br /&gt;
{&lt;br /&gt;
  OP_NOOP = 0x0,&lt;br /&gt;
  OP_RIGHTPAREN = 0x1,&lt;br /&gt;
  OP_MULTIPLY = 0x2,&lt;br /&gt;
  OP_DIVIDE = 0x3,&lt;br /&gt;
  OP_MODULUS = 0x4,&lt;br /&gt;
  OP_ADD = 0x5,&lt;br /&gt;
  OP_SUBTRACT = 0x6,&lt;br /&gt;
  OP_NEGATE = 0x7,&lt;br /&gt;
  OP_NOT = 0x8,&lt;br /&gt;
  OP_LESSTHAN = 0x9,&lt;br /&gt;
  OP_LESSTHANEQUALTO = 0xA,&lt;br /&gt;
  OP_GREATERTHAN = 0xB,&lt;br /&gt;
  OP_GREATERTHANEQUALTO = 0xC,&lt;br /&gt;
  OP_EQUALS = 0xD,&lt;br /&gt;
  OP_NOTEQUAL = 0xE,&lt;br /&gt;
  OP_AND = 0xF,&lt;br /&gt;
  OP_OR = 0x10,&lt;br /&gt;
  OP_LEFTPAREN = 0x11,&lt;br /&gt;
  OP_COMMA = 0x12,&lt;br /&gt;
  OP_BITWISEAND = 0x13,&lt;br /&gt;
  OP_BITWISEOR = 0x14,&lt;br /&gt;
  OP_BITWISENOT = 0x15,&lt;br /&gt;
  OP_BITSHIFTLEFT = 0x16,&lt;br /&gt;
  OP_BITSHIFTRIGHT = 0x17,&lt;br /&gt;
  NUM_EXPRESSION_OPERATORS = 0x18,&lt;br /&gt;
  MAX_OPERATOR_VALUE = 0x4000,&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
union expressionRpnDataUnion&lt;br /&gt;
{&lt;br /&gt;
  Operand constant;&lt;br /&gt;
  void *cmd;&lt;br /&gt;
  int cmdIdx;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
enum expressionRpnEnum&lt;br /&gt;
{&lt;br /&gt;
  RPN_CONSTANT = 0x0,&lt;br /&gt;
  RPN_CMD_IDX = 0x1,&lt;br /&gt;
  RPN_CMD = 0x2,&lt;br /&gt;
  RPN_END = 0x3,&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct expressionRpn&lt;br /&gt;
{&lt;br /&gt;
  expressionRpnEnum type;&lt;br /&gt;
  expressionRpnDataUnion data;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct ExpressionStatement&lt;br /&gt;
{&lt;br /&gt;
  char *filename;&lt;br /&gt;
  int line;&lt;br /&gt;
  int numRpn;&lt;br /&gt;
  expressionRpn *rpn;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct ScriptCondition&lt;br /&gt;
{&lt;br /&gt;
  bool fireOnTrue;&lt;br /&gt;
  int constructID;&lt;br /&gt;
  int blockID;&lt;br /&gt;
  ScriptCondition *next;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct GenericEventScript&lt;br /&gt;
{&lt;br /&gt;
  ScriptCondition *prerequisites;&lt;br /&gt;
  ExpressionStatement condition;&lt;br /&gt;
  int type;&lt;br /&gt;
  bool fireOnTrue;&lt;br /&gt;
  const char *action;&lt;br /&gt;
  int blockID;&lt;br /&gt;
  int constructID;&lt;br /&gt;
  GenericEventScript *next;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct ItemKeyHandler&lt;br /&gt;
{&lt;br /&gt;
  int key;&lt;br /&gt;
  GenericEventScript *keyScript;&lt;br /&gt;
  ItemKeyHandler *next;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct textExp_s&lt;br /&gt;
{&lt;br /&gt;
  ExpressionStatement textExp;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct columnInfo_s&lt;br /&gt;
{&lt;br /&gt;
  int elementStyle;&lt;br /&gt;
  int maxChars;&lt;br /&gt;
  rectDef_s rect;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct MenuCell&lt;br /&gt;
{&lt;br /&gt;
  int type;&lt;br /&gt;
  int maxChars;&lt;br /&gt;
  char *stringValue;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct MenuRow&lt;br /&gt;
{&lt;br /&gt;
  MenuCell *cells;&lt;br /&gt;
  char *eventName;&lt;br /&gt;
  char *onFocusEventName;&lt;br /&gt;
  bool disableArg;&lt;br /&gt;
  int status;&lt;br /&gt;
  int name;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct listBoxDef_s&lt;br /&gt;
{&lt;br /&gt;
  int mousePos;&lt;br /&gt;
#ifndef PC			//Note: PC only has 1 cursor, but consoles can have 4 controllers connected&lt;br /&gt;
  int cursorPos[4];&lt;br /&gt;
  int startPos[4];&lt;br /&gt;
  int endPos[4];&lt;br /&gt;
#else&lt;br /&gt;
  int cursorPos[1];&lt;br /&gt;
  int startPos[1];&lt;br /&gt;
  int endPos[1];&lt;br /&gt;
#endif&lt;br /&gt;
  int drawPadding;&lt;br /&gt;
  float elementWidth;&lt;br /&gt;
  float elementHeight;&lt;br /&gt;
  int numColumns;&lt;br /&gt;
  float special;&lt;br /&gt;
  columnInfo_s columnInfo[16];&lt;br /&gt;
  int notselectable;&lt;br /&gt;
  int noScrollBars;&lt;br /&gt;
  int usePaging;&lt;br /&gt;
  vec4_t selectBorder;&lt;br /&gt;
  vec4_t disableColor;&lt;br /&gt;
  vec4_t focusColor;&lt;br /&gt;
  vec4_t elementHighlightColor;&lt;br /&gt;
  vec4_t elementBackgroundColor;&lt;br /&gt;
  Material *selectIcon;&lt;br /&gt;
  Material *backgroundItemListbox;&lt;br /&gt;
  Material *highlightTexture;&lt;br /&gt;
  int noBlinkingHighlight;&lt;br /&gt;
  MenuRow *rows;&lt;br /&gt;
  int maxRows;&lt;br /&gt;
  int rowCount;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct multiDef_s&lt;br /&gt;
{&lt;br /&gt;
  const char *dvarList[32];&lt;br /&gt;
  const char *dvarStr[32];&lt;br /&gt;
  float dvarValue[32];&lt;br /&gt;
  int count;&lt;br /&gt;
  int actionOnEnterPressOnly;&lt;br /&gt;
  int strDef;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct profileMultiDef_s&lt;br /&gt;
{&lt;br /&gt;
  const char *profileVarList[32];&lt;br /&gt;
  const char *profileVarStr[32];&lt;br /&gt;
  float profileVarValue[32];&lt;br /&gt;
  int count;&lt;br /&gt;
  int actionOnEnterPressOnly;&lt;br /&gt;
  int strDef;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct editFieldDef_s&lt;br /&gt;
{&lt;br /&gt;
  int cursorPos[1];&lt;br /&gt;
  float minVal;&lt;br /&gt;
  float maxVal;&lt;br /&gt;
  float defVal;&lt;br /&gt;
  float range;&lt;br /&gt;
  int maxChars;&lt;br /&gt;
  int maxCharsGotoNext;&lt;br /&gt;
  int maxPaintChars;&lt;br /&gt;
  int paintOffset;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct enumDvarDef_s&lt;br /&gt;
{&lt;br /&gt;
  const char *enumDvarName;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
union focusDefData_t&lt;br /&gt;
{&lt;br /&gt;
  listBoxDef_s *listBox;&lt;br /&gt;
  multiDef_s *multi;&lt;br /&gt;
  profileMultiDef_s *profileMulti;&lt;br /&gt;
  editFieldDef_s *editField;&lt;br /&gt;
  enumDvarDef_s *enumDvar;&lt;br /&gt;
  void *data;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct focusItemDef_s&lt;br /&gt;
{&lt;br /&gt;
  const char *mouseEnterText;&lt;br /&gt;
  const char *mouseExitText;&lt;br /&gt;
  const char *mouseEnter;&lt;br /&gt;
  const char *mouseExit;&lt;br /&gt;
  ItemKeyHandler *onKey;&lt;br /&gt;
  focusDefData_t focusTypeData;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct gameMsgDef_s&lt;br /&gt;
{&lt;br /&gt;
  int gameMsgWindowIndex;&lt;br /&gt;
  int gameMsgWindowMode;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
union textDefData_t&lt;br /&gt;
{&lt;br /&gt;
  focusItemDef_s *focusItemDef;	// 3,4,5,7,8,9,10,11,12,13,14,16,20,21,22,30&lt;br /&gt;
  gameMsgDef_s *gameMsgDef;	// 15&lt;br /&gt;
  void *data;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct textDef_s&lt;br /&gt;
{&lt;br /&gt;
#ifndef PC			//Note: PC only has 1 cursor, but consoles can have 4 controllers connected&lt;br /&gt;
  rectDef_s textRect[4];&lt;br /&gt;
#else&lt;br /&gt;
  rectDef_s textRect[1];&lt;br /&gt;
#endif&lt;br /&gt;
  int alignment;&lt;br /&gt;
  int fontEnum;&lt;br /&gt;
  int itemFlags;&lt;br /&gt;
  int textAlignMode;&lt;br /&gt;
  float textalignx;&lt;br /&gt;
  float textaligny;&lt;br /&gt;
  float textscale;&lt;br /&gt;
  float textpadding;&lt;br /&gt;
  int textStyle;&lt;br /&gt;
  vec4_t fontColor;&lt;br /&gt;
  vec4_t glowColor;&lt;br /&gt;
  vec4_t shadowColor;&lt;br /&gt;
  float fontBlur;&lt;br /&gt;
  float glowSize;&lt;br /&gt;
  float shadowSize;&lt;br /&gt;
  vec2_t shadowOffset;&lt;br /&gt;
  const char *text;&lt;br /&gt;
  textExp_s *textExpData;&lt;br /&gt;
  textDefData_t textTypeData;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct imageDef_s&lt;br /&gt;
{&lt;br /&gt;
  ExpressionStatement materialExp;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct ownerDrawDef_s&lt;br /&gt;
{&lt;br /&gt;
  ExpressionStatement dataExp;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
union itemData_t&lt;br /&gt;
{&lt;br /&gt;
  textDef_s *textDef;	// 1,3,4,5,7,8,9,10,11,12,13,14,15,16,18,20,22&lt;br /&gt;
  imageDef_s *imageDef;		// 2&lt;br /&gt;
  ownerDrawDef_s *ownerDrawDef;	// 6&lt;br /&gt;
  focusItemDef_s *blankButtonDef;		// 19, 21&lt;br /&gt;
  void *data;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
/* dynamicFlags */&lt;br /&gt;
#define WINDOWDYNAMIC_VISIBLE		0x00000004&lt;br /&gt;
#define WINDOWDYNAMIC_CHECKMASK	0x000FFFFF&lt;br /&gt;
&lt;br /&gt;
/* staticFlags */&lt;br /&gt;
#define WINDOWSTATIC_DECORATION		0x00100000&lt;br /&gt;
#define WINDOWSTATIC_HORIZONTALSCROLL		0x00200000&lt;br /&gt;
#define WINDOWSTATIC_AUTOWRAPPED		0x00800000&lt;br /&gt;
#define WINDOWSTATIC_POPUP 			0x01000000&lt;br /&gt;
#define WINDOWSTATIC_OUTOFBOUNDSCLICK 		0x02000000&lt;br /&gt;
#define WINDOWSTATIC_LEGACYSPLITSCREENSCALE	0x04000000&lt;br /&gt;
#define WINDOWSTATIC_ALLOWSIGNIN		0x08000000&lt;br /&gt;
#define WINDOWSTATIC_HIDDENDURINGFLASHBANG	0x10000000&lt;br /&gt;
#define WINDOWSTATIC_HIDDENDURINGSCOPE		0x20000000&lt;br /&gt;
#define WINDOWSTATIC_HIDDENDURINGUI		0x40000000&lt;br /&gt;
#define WINDOWSTATIC_CHECKMASK			0xFFF00000&lt;br /&gt;
&lt;br /&gt;
struct rectDef_s&lt;br /&gt;
{&lt;br /&gt;
  float x;&lt;br /&gt;
  float y;&lt;br /&gt;
  float w;&lt;br /&gt;
  float h;&lt;br /&gt;
  int horzAlign;&lt;br /&gt;
  int vertAlign;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct windowDef_t&lt;br /&gt;
{&lt;br /&gt;
  const char *name;&lt;br /&gt;
  rectDef_s rect;&lt;br /&gt;
  rectDef_s rectClient;&lt;br /&gt;
  const char *group;&lt;br /&gt;
  char style;&lt;br /&gt;
  char border;&lt;br /&gt;
  char modal;&lt;br /&gt;
  char frameSides;&lt;br /&gt;
  float frameTexSize;&lt;br /&gt;
  float frameSize;&lt;br /&gt;
  int ownerDraw;&lt;br /&gt;
  int ownerDrawFlags;&lt;br /&gt;
  float borderSize;&lt;br /&gt;
  int staticFlags;&lt;br /&gt;
  int dynamicFlags[1];&lt;br /&gt;
  int nextTime;&lt;br /&gt;
  vec4_t foreColor;&lt;br /&gt;
  vec4_t backColor;&lt;br /&gt;
  vec4_t borderColor;&lt;br /&gt;
  vec4_t outlineColor;&lt;br /&gt;
  float rotation;&lt;br /&gt;
  Material *background;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct animParamsDef_t&lt;br /&gt;
{&lt;br /&gt;
  const char *name;&lt;br /&gt;
  rectDef_s rectClient;&lt;br /&gt;
  float borderSize;&lt;br /&gt;
  vec4_t foreColor;&lt;br /&gt;
  vec4_t backColor;&lt;br /&gt;
  vec4_t borderColor;&lt;br /&gt;
  vec4_t outlineColor;&lt;br /&gt;
  float textScale;&lt;br /&gt;
  float rotation;&lt;br /&gt;
  GenericEventHandler *onEvent;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct UIAnimInfo&lt;br /&gt;
{&lt;br /&gt;
  int animStateCount;&lt;br /&gt;
  animParamsDef_t **animStates;&lt;br /&gt;
  animParamsDef_t currentAnimState;&lt;br /&gt;
  animParamsDef_t nextAnimState;&lt;br /&gt;
  int animating;&lt;br /&gt;
  int animStartTime;&lt;br /&gt;
  int animDuration;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct itemDef_t&lt;br /&gt;
{&lt;br /&gt;
  windowDef_t window;&lt;br /&gt;
  int type;&lt;br /&gt;
  int dataType;&lt;br /&gt;
  int imageTrack;&lt;br /&gt;
  const char *dvar;&lt;br /&gt;
  const char *profileVar;&lt;br /&gt;
  const char *dvarTest;&lt;br /&gt;
  const char *enableDvar;&lt;br /&gt;
  int dvarFlags;		// 1=enableDvar, 2=disableDvar, 4=showDvar, 8=hideDvar, 16=focusDvar&lt;br /&gt;
  itemDefData_t typeData;&lt;br /&gt;
  menuDef_t *parent;&lt;br /&gt;
  rectData_s *rectExpData;&lt;br /&gt;
  ExpressionStatement visibleExp;&lt;br /&gt;
  unsigned __int64 showBits;&lt;br /&gt;
  unsigned __int64 hideBits;&lt;br /&gt;
  ExpressionStatement forecolorAExp;&lt;br /&gt;
  int ui3dWindowId;&lt;br /&gt;
  GenericEventHandler *onEvent;&lt;br /&gt;
  UIAnimInfo *animInfo;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct menuDef_t&lt;br /&gt;
{&lt;br /&gt;
  windowDef_t window;&lt;br /&gt;
  const char *font;&lt;br /&gt;
  int fullScreen;&lt;br /&gt;
  int ui3dWindowId;&lt;br /&gt;
  int itemCount;&lt;br /&gt;
  int fontIndex;&lt;br /&gt;
#ifndef PC			//Note: PC only has 1 cursor, but consoles can have 4 controllers connected&lt;br /&gt;
  int cursorItem[4];&lt;br /&gt;
#else&lt;br /&gt;
  int cursorItem[1];&lt;br /&gt;
#endif&lt;br /&gt;
  int fadeCycle;&lt;br /&gt;
  int priority;&lt;br /&gt;
  float fadeClamp;&lt;br /&gt;
  float fadeAmount;&lt;br /&gt;
  float fadeInAmount;&lt;br /&gt;
  float blurRadius;&lt;br /&gt;
  int openSlideSpeed;&lt;br /&gt;
  int closeSlideSpeed;&lt;br /&gt;
  int openSlideDirection;&lt;br /&gt;
  int closeSlideDirection;&lt;br /&gt;
  rectDef_s initialRectInfo;&lt;br /&gt;
  int openFadingTime;&lt;br /&gt;
  int closeFadingTime;&lt;br /&gt;
  int fadeTimeCounter;&lt;br /&gt;
  int slideTimeCounter;&lt;br /&gt;
  GenericEventHandler *onEvent;&lt;br /&gt;
  ItemKeyHandler *onKey;&lt;br /&gt;
  ExpressionStatement visibleExp;&lt;br /&gt;
  unsigned __int64 showBits;&lt;br /&gt;
  unsigned __int64 hideBits;&lt;br /&gt;
  const char *allowedBinding;&lt;br /&gt;
  const char *soundName;&lt;br /&gt;
  int imageTrack;&lt;br /&gt;
  int control;&lt;br /&gt;
  vec4_t focusColor;&lt;br /&gt;
  vec4_t disableColor;&lt;br /&gt;
  ExpressionStatement rectXExp;&lt;br /&gt;
  ExpressionStatement rectYExp;&lt;br /&gt;
  itemDef_s **items;&lt;br /&gt;
	int unknown5;&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>Therifboy</name></author>
	</entry>
	<entry>
		<id>https://codresearch.dev/index.php?title=Hud_Elements&amp;diff=819</id>
		<title>Hud Elements</title>
		<link rel="alternate" type="text/html" href="https://codresearch.dev/index.php?title=Hud_Elements&amp;diff=819"/>
		<updated>2015-01-12T15:03:59Z</updated>

		<summary type="html">&lt;p&gt;Therifboy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Game Structures]]&lt;br /&gt;
[[Category:CoD4]]&lt;br /&gt;
[[Category:WaW]]&lt;br /&gt;
[[Category:MW2]]&lt;br /&gt;
[[Category:BO1]]&lt;br /&gt;
[[Category:MW3]]&lt;br /&gt;
[[Category:BO2]]&lt;br /&gt;
[[Category:Ghosts]]&lt;br /&gt;
== Modern Warfare 1, 2, 3, Ghosts &amp;amp; World at War ==&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
enum he_type_t : int&lt;br /&gt;
{&lt;br /&gt;
	HE_TYPE_FREE = 0x0,&lt;br /&gt;
	HE_TYPE_TEXT = 0x1,&lt;br /&gt;
	HE_TYPE_VALUE = 0x2,&lt;br /&gt;
	HE_TYPE_PLAYERNAME = 0x3,&lt;br /&gt;
	HE_TYPE_MATERIAL = 0x4,&lt;br /&gt;
	HE_TYPE_TIMER_DOWN = 0x5,&lt;br /&gt;
	HE_TYPE_TIMER_UP = 0x6,&lt;br /&gt;
	HE_TYPE_TIMER_STATIC = 0x7,&lt;br /&gt;
	HE_TYPE_TENTHS_TIMER_DOWN = 0x8,&lt;br /&gt;
	HE_TYPE_TENTHS_TIMER_UP = 0x9,&lt;br /&gt;
	HE_TYPE_TENTHS_TIMER_STATIC = 0xA,&lt;br /&gt;
	HE_TYPE_CLOCK_DOWN = 0xB,&lt;br /&gt;
	HE_TYPE_CLOCK_UP = 0xC,&lt;br /&gt;
	HE_TYPE_WAYPOINT = 0xD,&lt;br /&gt;
	HE_TYPE_MAPNAME = 0xE,&lt;br /&gt;
	HE_TYPE_GAMETYPE = 0xF,&lt;br /&gt;
	HE_TYPE_COUNT = 0x10,&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
// hudelem_s-&amp;gt;flags&lt;br /&gt;
#define HUDELEMFLAG_FOREGROUND 0x1&lt;br /&gt;
#define HUDELEMFLAG_HIDEWHENDEAD 0x2&lt;br /&gt;
#define HUDELEMFLAG_HIDEWHENINMENU 0x4&lt;br /&gt;
#if !defined(COD4) &amp;amp;&amp;amp; !defined(WAW) // MW2 or later&lt;br /&gt;
 #define HUDELEMFLAG_WAYPOINT_PINTOEDGE 0x8&lt;br /&gt;
 #define HUDELEMFLAG_WAYPOINT_FADEATEDGE 0x10&lt;br /&gt;
 #define HUDELEMFLAG_WAYPOINT_ROTATEATEDGE 0x20&lt;br /&gt;
 #define HUDELEMFLAG_WAYPOINT_OFFSCREENONLY 0x40&lt;br /&gt;
 #define HUDELEMFLAG_LOWRES_BACKGROUND 0x100&lt;br /&gt;
 #ifndef MW2 // MW3 or later&lt;br /&gt;
  #define HUDELEM_FLAG_IS_CONSTANTSIZE 0x200&lt;br /&gt;
  #define HUDELEM_FLAG_DRAW_3D 0x400&lt;br /&gt;
  #define HUDELEMFLAG_HIDEWHENIN3RDPERSON 0x800&lt;br /&gt;
  #define HUDELEMFLAG_HIDEWHENINDEMO 0x1000&lt;br /&gt;
  #ifdef GHOSTS // Ghosts&lt;br /&gt;
   #define HUDELEMFLAG_ENTITY_LINKED 0x2000&lt;br /&gt;
   #define HUDELEMFLAG_HUDLIGHTING 0x4000&lt;br /&gt;
  #endif&lt;br /&gt;
 #endif&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
union hudelem_color_t&lt;br /&gt;
{&lt;br /&gt;
	struct&lt;br /&gt;
	{&lt;br /&gt;
		char r;&lt;br /&gt;
		char g;&lt;br /&gt;
		char b;&lt;br /&gt;
		char a;&lt;br /&gt;
	};&lt;br /&gt;
	int rgba;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct hudelem_s&lt;br /&gt;
{&lt;br /&gt;
	he_type_t type;&lt;br /&gt;
	float x;&lt;br /&gt;
	float y;&lt;br /&gt;
	float z;&lt;br /&gt;
	int targetEntNum;&lt;br /&gt;
	float fontScale;&lt;br /&gt;
	float fromFontScale;&lt;br /&gt;
#ifndef COD4 || WAW&lt;br /&gt;
	float fontScaleStartTime;&lt;br /&gt;
	float fontScaleTime;&lt;br /&gt;
#endif&lt;br /&gt;
	int font;&lt;br /&gt;
	int alignOrg;&lt;br /&gt;
	int alignScreen;&lt;br /&gt;
	hudelem_color_t color;&lt;br /&gt;
	hudelem_color_t fromColor;&lt;br /&gt;
	int fadeStartTime;&lt;br /&gt;
	int fadeTime;&lt;br /&gt;
	int label;&lt;br /&gt;
	int width;&lt;br /&gt;
	int height;&lt;br /&gt;
	int materialIndex;&lt;br /&gt;
#if defined(WAW) || defined(COD4)&lt;br /&gt;
	int offscreenMaterialIdx;&lt;br /&gt;
#endif&lt;br /&gt;
	int fromWidth;&lt;br /&gt;
	int fromHeight;&lt;br /&gt;
	int scaleStartTime;&lt;br /&gt;
	int scaleTime;&lt;br /&gt;
	float fromX;&lt;br /&gt;
	float fromY;&lt;br /&gt;
	int fromAlignOrg;&lt;br /&gt;
	int fromAlignScreen;&lt;br /&gt;
	int moveStartTime;&lt;br /&gt;
	int moveTime;&lt;br /&gt;
	int time;&lt;br /&gt;
	int duration;&lt;br /&gt;
	float value;&lt;br /&gt;
	int text;&lt;br /&gt;
	float sort;&lt;br /&gt;
	hudelem_color_t glowColor;&lt;br /&gt;
	int fxBirthTime;&lt;br /&gt;
	int fxLetterTime;&lt;br /&gt;
	int fxDecayStartTime;&lt;br /&gt;
	int fxDecayDuration;&lt;br /&gt;
	int soundID;&lt;br /&gt;
	int flags;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct game_hudelem_s&lt;br /&gt;
{&lt;br /&gt;
	hudelem_s hud;&lt;br /&gt;
	int clientNum;&lt;br /&gt;
	int team;&lt;br /&gt;
	int archived;&lt;br /&gt;
#ifdef GHOSTS&lt;br /&gt;
	int currentShowInKillcam;&lt;br /&gt;
#endif&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Advanced Warfare ==&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
enum he_type_t : int&lt;br /&gt;
{&lt;br /&gt;
	HE_TYPE_FREE = 0x0,&lt;br /&gt;
	HE_TYPE_TEXT = 0x1,&lt;br /&gt;
	HE_TYPE_VALUE = 0x2,&lt;br /&gt;
	HE_TYPE_PLAYERNAME = 0x3,&lt;br /&gt;
	HE_TYPE_MATERIAL = 0x4,&lt;br /&gt;
	HE_TYPE_TIMER_DOWN = 0x5,&lt;br /&gt;
	HE_TYPE_TIMER_UP = 0x6,&lt;br /&gt;
	HE_TYPE_TIMER_STATIC = 0x7,&lt;br /&gt;
	HE_TYPE_TENTHS_TIMER_DOWN = 0x8,&lt;br /&gt;
	HE_TYPE_TENTHS_TIMER_UP = 0x9,&lt;br /&gt;
	HE_TYPE_TENTHS_TIMER_STATIC = 0xA,&lt;br /&gt;
	HE_TYPE_CLOCK_DOWN = 0xB,&lt;br /&gt;
	HE_TYPE_CLOCK_UP = 0xC,&lt;br /&gt;
	HE_TYPE_WAYPOINT = 0xD,&lt;br /&gt;
	HE_TYPE_MAPNAME = 0xE,&lt;br /&gt;
	HE_TYPE_GAMETYPE = 0xF,&lt;br /&gt;
	HE_TYPE_COUNT = 0x10,&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
// hudelem_s-&amp;gt;flags&lt;br /&gt;
#define HUDELEMFLAG_FOREGROUND		0x1&lt;br /&gt;
#define HUDELEMFLAG_HIDEWHENDEAD	0x2&lt;br /&gt;
#define HUDELEMFLAG_HIDEWHENINMENU	0x4&lt;br /&gt;
#define HUDELEMFLAG_WAYPOINT_PINTOEDGE	0x8&lt;br /&gt;
#define HUDELEMFLAG_WAYPOINT_FADEATEDGE	0x10&lt;br /&gt;
#define HUDELEMFLAG_WAYPOINT_ROTATEATEDGE	0x20&lt;br /&gt;
#define HUDELEMFLAG_WAYPOINT_OFFSCREENONLY	0x40&lt;br /&gt;
#define HUDELEMFLAG_LOWRES_BACKGROUND	0x100&lt;br /&gt;
#define HUDELEMFLAG_IS_CONSTANTSIZE	0x200&lt;br /&gt;
#define HUDELEMFLAG_DRAW_3D		0x400&lt;br /&gt;
#define HUDELEMFLAG_HIDEWHENIN3RDPERSON	0x800&lt;br /&gt;
#define HUDELEMFLAG_HIDEWHENINDEMO	0x1000&lt;br /&gt;
#define HUDELEMFLAG_POSITIONINWORLD	0x4000&lt;br /&gt;
#define HUDELEMFLAG_ENABLEHUDLIGHTING	0x10000&lt;br /&gt;
&lt;br /&gt;
union hudelem_color_t&lt;br /&gt;
{&lt;br /&gt;
	struct&lt;br /&gt;
	{&lt;br /&gt;
		char r;&lt;br /&gt;
		char g;&lt;br /&gt;
		char b;&lt;br /&gt;
		char a;&lt;br /&gt;
	};&lt;br /&gt;
	int rgba;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct hudelem_s&lt;br /&gt;
{&lt;br /&gt;
	int unknown1;		// 0x0&lt;br /&gt;
	int font;		// 0x4&lt;br /&gt;
	int alignOrg;		// 0x8&lt;br /&gt;
	int alignScreen;	// 0xC&lt;br /&gt;
	float x;		// 0x10&lt;br /&gt;
	float y;		// 0x14&lt;br /&gt;
	float z;		// 0x18&lt;br /&gt;
	he_type_t type;		// 0x1C&lt;br /&gt;
	float fontScale;	// 0x20&lt;br /&gt;
	float fromFontScale;	// 0x24&lt;br /&gt;
	float fontScaleStartTime;// 0x28&lt;br /&gt;
	float fontScaleTime;	// 0x2C&lt;br /&gt;
	hudelem_color_t color;	// 0x30&lt;br /&gt;
	hudelem_color_t fromColor;// 0x34&lt;br /&gt;
	int fadeStartTime;	// 0x38&lt;br /&gt;
	int fadeTime;		// 0x3C&lt;br /&gt;
	int label;		// 0x40&lt;br /&gt;
	int width;		// 0x44&lt;br /&gt;
	int height;		// 0x48&lt;br /&gt;
	int materialIndex;	// 0x4C&lt;br /&gt;
	int fromWidth;		// 0x50&lt;br /&gt;
	int fromHeight;		// 0x54&lt;br /&gt;
	int scaleStartTime;	// 0x58&lt;br /&gt;
	int scaleTime;		// 0x5C&lt;br /&gt;
	float fromX;		// 0x60&lt;br /&gt;
	float fromY;		// 0x64&lt;br /&gt;
	int fromAlignOrg;	// 0x68&lt;br /&gt;
	int fromAlignScreen;	// 0x6C&lt;br /&gt;
	int moveStartTime;	// 0x70&lt;br /&gt;
	int moveTime;		// 0x74&lt;br /&gt;
	int time;		// 0x78&lt;br /&gt;
	int duration;		// 0x7C&lt;br /&gt;
	float value;		// 0x80&lt;br /&gt;
	int text;		// 0x84&lt;br /&gt;
	float sort;		// 0x88&lt;br /&gt;
	hudelem_color_t glowColor;// 0x8C&lt;br /&gt;
	int fxBirthTime;	// 0x90&lt;br /&gt;
	int fxLetterTime;	// 0x94&lt;br /&gt;
	int fxDecayStartTime;	// 0x98&lt;br /&gt;
	int fxDecayDuration;	// 0x9C&lt;br /&gt;
	int soundID;		// 0xA0&lt;br /&gt;
	int unknown2;		// 0xA4&lt;br /&gt;
	int flags;		// 0xA8&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct game_hudelem_s&lt;br /&gt;
{&lt;br /&gt;
	hudelem_s hud;		// 0x0&lt;br /&gt;
	int clientNum;		// 0xAC&lt;br /&gt;
	int team;		// 0xB0&lt;br /&gt;
	int archived;		// 0xB4&lt;br /&gt;
	int currentShowInKillcam;	// 0xB8&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
== Black Ops 1 &amp;amp; 2 ==&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
union hudelem_color_t&lt;br /&gt;
{&lt;br /&gt;
	struct&lt;br /&gt;
	{&lt;br /&gt;
		char r;&lt;br /&gt;
		char g;&lt;br /&gt;
		char b;&lt;br /&gt;
		char a;&lt;br /&gt;
	};&lt;br /&gt;
	int rgba;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
enum he_type_t : char&lt;br /&gt;
{&lt;br /&gt;
	HE_TYPE_FREE = 0x0,&lt;br /&gt;
	HE_TYPE_TEXT = 0x1,&lt;br /&gt;
	HE_TYPE_VALUE = 0x2,&lt;br /&gt;
	HE_TYPE_PLAYERNAME = 0x3,&lt;br /&gt;
	HE_TYPE_MAPNAME = 0x4,&lt;br /&gt;
	HE_TYPE_GAMETYPE = 0x5,&lt;br /&gt;
	HE_TYPE_MATERIAL = 0x6,&lt;br /&gt;
	HE_TYPE_TIMER_DOWN = 0x7,&lt;br /&gt;
	HE_TYPE_TIMER_UP = 0x8,&lt;br /&gt;
	HE_TYPE_TENTHS_TIMER_DOWN = 0x9,&lt;br /&gt;
	HE_TYPE_TENTHS_TIMER_UP = 0xA,&lt;br /&gt;
	HE_TYPE_CLOCK_DOWN = 0xB,&lt;br /&gt;
	HE_TYPE_CLOCK_UP = 0xC,&lt;br /&gt;
	HE_TYPE_WAYPOINT = 0xD,&lt;br /&gt;
	HE_TYPE_COUNT = 0xE,&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
// hudelem_s-&amp;gt;flags&lt;br /&gt;
#define HUDELEMFLAG_FOREGROUND 0x1&lt;br /&gt;
#define HUDELEMFLAG_HIDEWHENDEAD 0x2&lt;br /&gt;
#define HUDELEMFLAG_HIDEWHENINMENU 0x4&lt;br /&gt;
#define HUDELEMFLAG_FONTSTYLE3D_SHADOWED 0x8&lt;br /&gt;
#define HUDELEMFLAG_FONTSTYLE3D_SHADOWEDMORE 0x10&lt;br /&gt;
#define HUDELEMFLAG_FONT3DUSEGLOWCOLOR 0x20&lt;br /&gt;
#define HUDELEMFLAG_HIDEWHENINKILLCAM 0x40&lt;br /&gt;
#define HUDELEMFLAG_FADEWHENTARGETED 0x100&lt;br /&gt;
#define HUDELEMFLAG_HIDEWHENINDEMO 0x200&lt;br /&gt;
#define HUDELEMFLAG_OVERRIDEWHENINDEMO 0x400&lt;br /&gt;
#define HUDELEMFLAG_HIDEWHILEREMOTECONTROLLING 0x800&lt;br /&gt;
#ifdef BO2&lt;br /&gt;
#define HUDELEMFLAG_IMMUNETODEMOGAMEHUDSETTING 0x8000&lt;br /&gt;
#define HUDELEMFLAG_IMMUNETODEMOFREECAMERA 0x10000&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
#pragma pack(push, 4)&lt;br /&gt;
struct hudelem_s&lt;br /&gt;
{&lt;br /&gt;
	float x;&lt;br /&gt;
	float y;&lt;br /&gt;
	float z;&lt;br /&gt;
	float fontScale;&lt;br /&gt;
#ifdef BO2&lt;br /&gt;
	float fromFontScale;&lt;br /&gt;
	int fontScaleStartTime;&lt;br /&gt;
#endif&lt;br /&gt;
	hudelem_color_t color;&lt;br /&gt;
	hudelem_color_t fromColor;&lt;br /&gt;
	int fadeStartTime;&lt;br /&gt;
	int scaleStartTime;&lt;br /&gt;
	float fromX;&lt;br /&gt;
	float fromY;&lt;br /&gt;
	int moveStartTime;&lt;br /&gt;
	int time;&lt;br /&gt;
	int duration;&lt;br /&gt;
	float value;&lt;br /&gt;
	float sort;&lt;br /&gt;
	hudelem_color_t glowColor;&lt;br /&gt;
	int fxBirthTime;&lt;br /&gt;
#ifdef BO2&lt;br /&gt;
	unsigned int flags;&lt;br /&gt;
#endif&lt;br /&gt;
	short targetEntNum;&lt;br /&gt;
	short fontscaleTime;&lt;br /&gt;
	short fadeTime;&lt;br /&gt;
	short label;&lt;br /&gt;
	short width;&lt;br /&gt;
	short height;&lt;br /&gt;
	short fromWidth;&lt;br /&gt;
	short fromHeight;&lt;br /&gt;
	short scaleTime;&lt;br /&gt;
	short moveTime;&lt;br /&gt;
	short text;&lt;br /&gt;
	unsigned short fxLetterTime;&lt;br /&gt;
	unsigned short fxDecayStartTime;&lt;br /&gt;
	unsigned short fxDecayDuration;&lt;br /&gt;
	unsigned short fxRedactDecayStartTime;&lt;br /&gt;
	unsigned short fxRedactDecayDuration;&lt;br /&gt;
#ifdef BO1&lt;br /&gt;
	short flags;&lt;br /&gt;
#endif&lt;br /&gt;
	he_type_t type;&lt;br /&gt;
	char font;&lt;br /&gt;
	char alignOrg;&lt;br /&gt;
	char alignScreen;&lt;br /&gt;
	char materialIndex;&lt;br /&gt;
	char offscreenMaterialIdx;&lt;br /&gt;
	char fromAlignOrg;&lt;br /&gt;
	char fromAlignScreen;&lt;br /&gt;
	char soundID;&lt;br /&gt;
	bool ui3dWindow;&lt;br /&gt;
};&lt;br /&gt;
#pragma pack(pop)&lt;br /&gt;
&lt;br /&gt;
struct game_hudelem_s&lt;br /&gt;
{&lt;br /&gt;
	hudelem_s elem;&lt;br /&gt;
	int clientNum;&lt;br /&gt;
	int team;&lt;br /&gt;
	int archived;&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Therifboy</name></author>
	</entry>
	<entry>
		<id>https://codresearch.dev/index.php?title=Menu_Asset_(MW3)&amp;diff=818</id>
		<title>Menu Asset (MW3)</title>
		<link rel="alternate" type="text/html" href="https://codresearch.dev/index.php?title=Menu_Asset_(MW3)&amp;diff=818"/>
		<updated>2015-01-12T15:01:28Z</updated>

		<summary type="html">&lt;p&gt;Therifboy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
[[Category:Assets]]&lt;br /&gt;
[[Category:MW3]]&lt;br /&gt;
[[Category:Ghosts]]&lt;br /&gt;
This asset remains to share almost the exact same structure on Ghosts and Advanced Warfare most likely because they both now use lua files for their user interface instead.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
struct MenuEventHandlerSet;&lt;br /&gt;
struct Statement_s;&lt;br /&gt;
&lt;br /&gt;
struct UIFunctionList&lt;br /&gt;
{&lt;br /&gt;
  int totalFunctions;&lt;br /&gt;
  Statement_s **functions;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct StaticDvar&lt;br /&gt;
{&lt;br /&gt;
  dvar_t *dvar;&lt;br /&gt;
  char *dvarName;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct StaticDvarList&lt;br /&gt;
{&lt;br /&gt;
  int numStaticDvars;&lt;br /&gt;
  StaticDvar **staticDvars;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct StringList&lt;br /&gt;
{&lt;br /&gt;
  int totalStrings;&lt;br /&gt;
  const char **strings;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct ExpressionSupportingData&lt;br /&gt;
{&lt;br /&gt;
  UIFunctionList uifunctions;&lt;br /&gt;
  StaticDvarList staticDvarList;&lt;br /&gt;
  StringList uiStrings;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
enum expDataType&lt;br /&gt;
{&lt;br /&gt;
  VAL_INT = 0x0,&lt;br /&gt;
  VAL_FLOAT = 0x1,&lt;br /&gt;
  VAL_STRING = 0x2,&lt;br /&gt;
  NUM_INTERNAL_DATATYPES = 0x3,&lt;br /&gt;
  VAL_FUNCTION = 0x3,&lt;br /&gt;
  NUM_DATATYPES = 0x4,&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct ExpressionString&lt;br /&gt;
{&lt;br /&gt;
  const char *string;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
union operandInternalDataUnion&lt;br /&gt;
{&lt;br /&gt;
  int intVal;&lt;br /&gt;
  float floatVal;&lt;br /&gt;
  ExpressionString stringVal;&lt;br /&gt;
  Statement_s *function;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
#pragma pack(push, 1)&lt;br /&gt;
struct Operand&lt;br /&gt;
{&lt;br /&gt;
#ifndef IW6 || S1 // MW3  TODO: replace by &amp;quot;#if !defined(IW6) || defined(MW3)&amp;quot; or &amp;quot;#if !defined(IW6) || !defined(MW3)&amp;quot;&lt;br /&gt;
	expDataType dataType;&lt;br /&gt;
#endif&lt;br /&gt;
	operandInternalDataUnion internals;&lt;br /&gt;
#if defined(IW6) || defined(S1) // Ghosts and AW&lt;br /&gt;
	expDataType dataType;&lt;br /&gt;
#endif&lt;br /&gt;
};&lt;br /&gt;
#pragma pack(pop)&lt;br /&gt;
&lt;br /&gt;
union entryInternalData&lt;br /&gt;
{&lt;br /&gt;
  operationEnum op;&lt;br /&gt;
  Operand operand;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct expressionEntry&lt;br /&gt;
{&lt;br /&gt;
#ifndef IW6 || S1 // MW3  TODO: replace by &amp;quot;#if !defined(IW6) || defined(MW3)&amp;quot; or &amp;quot;#if !defined(IW6) || !defined(MW3)&amp;quot;&lt;br /&gt;
  int type;&lt;br /&gt;
#endif&lt;br /&gt;
  entryInternalData data;&lt;br /&gt;
#if defined(IW6) || defined(S1) // Ghosts or Advanced Warfare&lt;br /&gt;
  int type;&lt;br /&gt;
#endif&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct ExpressionPersistentState&lt;br /&gt;
{&lt;br /&gt;
  int flags;&lt;br /&gt;
  int playerDataKey[4];&lt;br /&gt;
  int lastExecuteTime[4];&lt;br /&gt;
  Operand lastResult[4];&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct Statement_s&lt;br /&gt;
{&lt;br /&gt;
  int numEntries;&lt;br /&gt;
  expressionEntry *entries;&lt;br /&gt;
  ExpressionSupportingData *supportingData;&lt;br /&gt;
  ExpressionPersistentState persistentState;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct SetLocalVarData&lt;br /&gt;
{&lt;br /&gt;
  const char *localVarName;&lt;br /&gt;
  Statement_s *expression;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct ConditionalScript&lt;br /&gt;
{&lt;br /&gt;
  MenuEventHandlerSet *eventHandlerSet;&lt;br /&gt;
  Statement_s *eventExpression; // loads this first&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
union EventData&lt;br /&gt;
{&lt;br /&gt;
  const char *unconditionalScript;&lt;br /&gt;
  ConditionalScript *conditionalScript;&lt;br /&gt;
  MenuEventHandlerSet *elseScript;&lt;br /&gt;
  SetLocalVarData *setLocalVarData;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
#pragma pack(push, 4)&lt;br /&gt;
struct MenuEventHandler&lt;br /&gt;
{&lt;br /&gt;
  EventData eventData;&lt;br /&gt;
  char eventType;&lt;br /&gt;
};&lt;br /&gt;
#pragma pack(pop)&lt;br /&gt;
&lt;br /&gt;
struct MenuEventHandlerSet&lt;br /&gt;
{&lt;br /&gt;
  int eventHandlerCount;&lt;br /&gt;
  MenuEventHandler **eventHandlers;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct ItemKeyHandler&lt;br /&gt;
{&lt;br /&gt;
  int key;&lt;br /&gt;
  MenuEventHandlerSet *action;&lt;br /&gt;
  ItemKeyHandler *next;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
#pragma pack(push, 4)&lt;br /&gt;
struct rectDef_s&lt;br /&gt;
{&lt;br /&gt;
  float x;&lt;br /&gt;
  float y;&lt;br /&gt;
  float w;&lt;br /&gt;
  float h;&lt;br /&gt;
  char horzAlign;&lt;br /&gt;
  char vertAlign;&lt;br /&gt;
};&lt;br /&gt;
#pragma pack(pop)&lt;br /&gt;
&lt;br /&gt;
// sizeof = 0xB0&lt;br /&gt;
struct windowDef_t&lt;br /&gt;
{&lt;br /&gt;
  const char *name;&lt;br /&gt;
  rectDef_s rect;&lt;br /&gt;
  rectDef_s rectClient;&lt;br /&gt;
  const char *group;&lt;br /&gt;
  int style;&lt;br /&gt;
  int border;&lt;br /&gt;
  int ownerDraw;&lt;br /&gt;
  int ownerDrawFlags;&lt;br /&gt;
  float borderSize;&lt;br /&gt;
  int staticFlags;&lt;br /&gt;
#ifdef PC&lt;br /&gt;
  int dynamicFlags[1];&lt;br /&gt;
#else&lt;br /&gt;
  int dynamicFlags[4];&lt;br /&gt;
#endif&lt;br /&gt;
  int nextTime;&lt;br /&gt;
  float foreColor[4];&lt;br /&gt;
  float backColor[4];&lt;br /&gt;
  float borderColor[4];&lt;br /&gt;
  float outlineColor[4];&lt;br /&gt;
  float disableColor[4];&lt;br /&gt;
  Material *background;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
enum ItemFloatExpressionTarget&lt;br /&gt;
{&lt;br /&gt;
  ITEM_FLOATEXP_TGT_RECT_X = 0x0,&lt;br /&gt;
  ITEM_FLOATEXP_TGT_RECT_Y = 0x1,&lt;br /&gt;
  ITEM_FLOATEXP_TGT_RECT_W = 0x2,&lt;br /&gt;
  ITEM_FLOATEXP_TGT_RECT_H = 0x3,&lt;br /&gt;
  ITEM_FLOATEXP_TGT_FORECOLOR_R = 0x4,&lt;br /&gt;
  ITEM_FLOATEXP_TGT_FORECOLOR_G = 0x5,&lt;br /&gt;
  ITEM_FLOATEXP_TGT_FORECOLOR_B = 0x6,&lt;br /&gt;
  ITEM_FLOATEXP_TGT_FORECOLOR_RGB = 0x7,&lt;br /&gt;
  ITEM_FLOATEXP_TGT_FORECOLOR_A = 0x8,&lt;br /&gt;
  ITEM_FLOATEXP_TGT_GLOWCOLOR_R = 0x9,&lt;br /&gt;
  ITEM_FLOATEXP_TGT_GLOWCOLOR_G = 0xA,&lt;br /&gt;
  ITEM_FLOATEXP_TGT_GLOWCOLOR_B = 0xB,&lt;br /&gt;
  ITEM_FLOATEXP_TGT_GLOWCOLOR_RGB = 0xC,&lt;br /&gt;
  ITEM_FLOATEXP_TGT_GLOWCOLOR_A = 0xD,&lt;br /&gt;
  ITEM_FLOATEXP_TGT_BACKCOLOR_R = 0xE,&lt;br /&gt;
  ITEM_FLOATEXP_TGT_BACKCOLOR_G = 0xF,&lt;br /&gt;
  ITEM_FLOATEXP_TGT_BACKCOLOR_B = 0x10,&lt;br /&gt;
  ITEM_FLOATEXP_TGT_BACKCOLOR_RGB = 0x11,&lt;br /&gt;
  ITEM_FLOATEXP_TGT_BACKCOLOR_A = 0x12,&lt;br /&gt;
  ITEM_FLOATEXP_TGT__COUNT = 0x13,&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct ItemFloatExpression&lt;br /&gt;
{&lt;br /&gt;
  ItemFloatExpressionTarget target;&lt;br /&gt;
  Statement_s *expression;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct editFieldDef_s&lt;br /&gt;
{&lt;br /&gt;
  float minVal;&lt;br /&gt;
  float maxVal;&lt;br /&gt;
  float stepVal;&lt;br /&gt;
  float range;&lt;br /&gt;
  int maxChars;&lt;br /&gt;
  int maxCharsGotoNext;&lt;br /&gt;
  int maxPaintChars;&lt;br /&gt;
  int paintOffset;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct multiDef_s&lt;br /&gt;
{&lt;br /&gt;
  const char *dvarList[32];&lt;br /&gt;
  const char *dvarStr[32];&lt;br /&gt;
  float dvarValue[32];&lt;br /&gt;
  int count;&lt;br /&gt;
  int strDef;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct columnInfo_s&lt;br /&gt;
{&lt;br /&gt;
  int xpos;&lt;br /&gt;
  int ypos;&lt;br /&gt;
  int width;&lt;br /&gt;
  int height;&lt;br /&gt;
  int maxChars;&lt;br /&gt;
  int alignment;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
// TODO: 4 bytes missing somewhere&lt;br /&gt;
struct listBoxDef_s&lt;br /&gt;
{&lt;br /&gt;
#ifdef PC&lt;br /&gt;
  int startPos[1];&lt;br /&gt;
  int endPos[1];&lt;br /&gt;
#else&lt;br /&gt;
  int startPos[4];&lt;br /&gt;
  int endPos[4];&lt;br /&gt;
#endif&lt;br /&gt;
  int drawPadding;&lt;br /&gt;
  float elementWidth;&lt;br /&gt;
  float elementHeight;&lt;br /&gt;
  int elementStyle;&lt;br /&gt;
  int numColumns;&lt;br /&gt;
  columnInfo_s columnInfo[16];&lt;br /&gt;
  MenuEventHandlerSet *onDoubleClick;&lt;br /&gt;
  int notselectable;&lt;br /&gt;
  int noScrollBars;&lt;br /&gt;
  int usePaging;&lt;br /&gt;
  float selectBorder[4];&lt;br /&gt;
  Material *selectIcon;&lt;br /&gt;
  Statement_s *elementHeightExp;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct newsTickerDef_s&lt;br /&gt;
{&lt;br /&gt;
  int feedId;&lt;br /&gt;
  int speed;&lt;br /&gt;
  int spacing;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct textScrollDef_s&lt;br /&gt;
{&lt;br /&gt;
  int startTime;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
union itemDefData_t&lt;br /&gt;
{&lt;br /&gt;
  listBoxDef_s *listBox;&lt;br /&gt;
  editFieldDef_s *editField;&lt;br /&gt;
  multiDef_s *multi;&lt;br /&gt;
  const char *enumDvarName;&lt;br /&gt;
  newsTickerDef_s *ticker;&lt;br /&gt;
  textScrollDef_s *scroll;&lt;br /&gt;
  void *data;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct itemDef_t&lt;br /&gt;
{&lt;br /&gt;
  windowDef_t window;&lt;br /&gt;
#ifdef PC&lt;br /&gt;
  rectDef_s textRect[1];&lt;br /&gt;
#else&lt;br /&gt;
  rectDef_s textRect[4];&lt;br /&gt;
#endif&lt;br /&gt;
  int type;&lt;br /&gt;
  int dataType;&lt;br /&gt;
  int alignment;&lt;br /&gt;
  int fontEnum;&lt;br /&gt;
  int textAlignMode;&lt;br /&gt;
  float textalignx;&lt;br /&gt;
  float textaligny;&lt;br /&gt;
  float textscale;&lt;br /&gt;
  int textStyle;&lt;br /&gt;
  int gameMsgWindowIndex;&lt;br /&gt;
  int gameMsgWindowMode;&lt;br /&gt;
  const char *text;&lt;br /&gt;
  int itemFlags;&lt;br /&gt;
  menuDef_t *parent;&lt;br /&gt;
  MenuEventHandlerSet *mouseEnterText;&lt;br /&gt;
  MenuEventHandlerSet *mouseExitText;&lt;br /&gt;
  MenuEventHandlerSet *mouseEnter;&lt;br /&gt;
  MenuEventHandlerSet *mouseExit;&lt;br /&gt;
  MenuEventHandlerSet *action;&lt;br /&gt;
  MenuEventHandlerSet *accept;&lt;br /&gt;
  MenuEventHandlerSet *onFocus;&lt;br /&gt;
  MenuEventHandlerSet *hasFocus;&lt;br /&gt;
  MenuEventHandlerSet *leaveFocus;&lt;br /&gt;
  const char *dvar;&lt;br /&gt;
  const char *dvarTest;&lt;br /&gt;
  ItemKeyHandler *onKey;&lt;br /&gt;
  const char *enableDvar;&lt;br /&gt;
  const char *localVar;&lt;br /&gt;
  int dvarFlags;&lt;br /&gt;
  snd_alias_list_t *focusSound;&lt;br /&gt;
  float special;&lt;br /&gt;
#ifdef PC&lt;br /&gt;
  int cursorPos[1];&lt;br /&gt;
#else&lt;br /&gt;
  int cursorPos[4];&lt;br /&gt;
#endif&lt;br /&gt;
  itemDefData_t typeData;&lt;br /&gt;
  int floatExpressionCount;&lt;br /&gt;
  ItemFloatExpression *floatExpressions;&lt;br /&gt;
  Statement_s *visibleExp;&lt;br /&gt;
  Statement_s *disabledExp;&lt;br /&gt;
  Statement_s *textExp;&lt;br /&gt;
  Statement_s *materialExp;&lt;br /&gt;
  float glowColor[4];&lt;br /&gt;
  bool decayActive;&lt;br /&gt;
  int fxBirthTime;&lt;br /&gt;
  int fxLetterTime;&lt;br /&gt;
  int fxDecayStartTime;&lt;br /&gt;
  int fxDecayDuration;&lt;br /&gt;
  int lastSoundPlayedTime;&lt;br /&gt;
  Statement_s *textAlignYExp;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct menuTransition&lt;br /&gt;
{&lt;br /&gt;
  int transitionType;&lt;br /&gt;
  int startTime;&lt;br /&gt;
  float startVal;&lt;br /&gt;
  float endVal;&lt;br /&gt;
  float time;&lt;br /&gt;
  int endTriggerType;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct menuData_t&lt;br /&gt;
{&lt;br /&gt;
  int fullScreen;&lt;br /&gt;
  int fadeCycle;&lt;br /&gt;
  float fadeClamp;&lt;br /&gt;
  float fadeAmount;&lt;br /&gt;
  float fadeInAmount;&lt;br /&gt;
  float blurRadius;&lt;br /&gt;
  MenuEventHandlerSet *onOpen;&lt;br /&gt;
  MenuEventHandlerSet *onCloseRequest;&lt;br /&gt;
  MenuEventHandlerSet *onClose;&lt;br /&gt;
  MenuEventHandlerSet *onESC;&lt;br /&gt;
  MenuEventHandlerSet *onFocusDueToClose;&lt;br /&gt;
  ItemKeyHandler *onKey;&lt;br /&gt;
  Statement_s *visibleExp;&lt;br /&gt;
  const char *allowedBinding;&lt;br /&gt;
  const char *soundName;&lt;br /&gt;
  float focusColor[4];&lt;br /&gt;
  Statement_s *rectXExp;&lt;br /&gt;
  Statement_s *rectYExp;&lt;br /&gt;
  Statement_s *rectWExp;&lt;br /&gt;
  Statement_s *rectHExp;&lt;br /&gt;
  Statement_s *openSoundExp;&lt;br /&gt;
  Statement_s *closeSoundExp;&lt;br /&gt;
  Statement_s *soundLoopExp;&lt;br /&gt;
#ifdef PC&lt;br /&gt;
  int cursorItem[1];&lt;br /&gt;
#else&lt;br /&gt;
  int cursorItem[4];&lt;br /&gt;
#endif&lt;br /&gt;
  menuTransition scaleTransition[1];&lt;br /&gt;
  menuTransition alphaTransition[1];&lt;br /&gt;
  menuTransition xTransition[1];&lt;br /&gt;
  menuTransition yTransition[1];&lt;br /&gt;
  ExpressionSupportingData *expressionData;&lt;br /&gt;
  char priority;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct menuDef_t&lt;br /&gt;
{&lt;br /&gt;
  menuData_t *data;&lt;br /&gt;
  windowDef_t window;&lt;br /&gt;
  int itemCount;&lt;br /&gt;
  itemDef_t **items;&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Therifboy</name></author>
	</entry>
	<entry>
		<id>https://codresearch.dev/index.php?title=Sound_Asset&amp;diff=817</id>
		<title>Sound Asset</title>
		<link rel="alternate" type="text/html" href="https://codresearch.dev/index.php?title=Sound_Asset&amp;diff=817"/>
		<updated>2015-01-12T14:54:14Z</updated>

		<summary type="html">&lt;p&gt;Therifboy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
[[Category:Assets]]&lt;br /&gt;
[[Category:CoD4]]&lt;br /&gt;
[[Category:WaW]]&lt;br /&gt;
[[Category:MW2]]&lt;br /&gt;
[[Category:BO1]]&lt;br /&gt;
[[Category:MW3]]&lt;br /&gt;
[[Category:BO2]]&lt;br /&gt;
[[Category:Ghosts]]&lt;br /&gt;
== Infinity Ward ==&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
struct SpeakerLevels&lt;br /&gt;
{&lt;br /&gt;
  int speaker;&lt;br /&gt;
  int numLevels;&lt;br /&gt;
  float levels[2];&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct ChannelMap&lt;br /&gt;
{&lt;br /&gt;
  int entryCount;	// how many entries are used&lt;br /&gt;
  SpeakerLevels speakers6];&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct SpeakerMap&lt;br /&gt;
{&lt;br /&gt;
  bool isDefault;&lt;br /&gt;
  const char *name;&lt;br /&gt;
  ChannelMap channelMaps[2][2];&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
enum snd_alias_type_t : char&lt;br /&gt;
{&lt;br /&gt;
	SAT_UNKNOWN = 0x0,&lt;br /&gt;
	SAT_LOADED = 0x1,&lt;br /&gt;
	SAT_STREAMED = 0x2,&lt;br /&gt;
	SAT_PRIMED = 0x3,&lt;br /&gt;
	SAT_COUNT = 0x4,&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct StreamFileNamePacked&lt;br /&gt;
{&lt;br /&gt;
  unsigned __int64 offset;&lt;br /&gt;
  unsigned __int64 length;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct StreamFileNameRaw&lt;br /&gt;
{&lt;br /&gt;
  const char *dir;&lt;br /&gt;
  const char *name;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
union StreamFileInfo&lt;br /&gt;
{&lt;br /&gt;
  StreamFileNameRaw raw;&lt;br /&gt;
  StreamFileNamePacked packed;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct StreamFileName&lt;br /&gt;
{&lt;br /&gt;
  unsigned __int16 isLocalized;&lt;br /&gt;
  unsigned __int16 fileIndex;&lt;br /&gt;
  StreamFileInfo info;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct StreamedSound&lt;br /&gt;
{&lt;br /&gt;
  StreamFileName filename;&lt;br /&gt;
  unsigned int totalMsec;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct PrimedSound&lt;br /&gt;
{&lt;br /&gt;
  StreamFileName filename;&lt;br /&gt;
  LoadedSound *loadedPart;&lt;br /&gt;
  int dataOffset;&lt;br /&gt;
  int totalSize;&lt;br /&gt;
  unsigned int primedCrc;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
union SoundData&lt;br /&gt;
{&lt;br /&gt;
  LoadedSound *loadSnd;	// SoundFile-&amp;gt;type == SAT_LOADED&lt;br /&gt;
  StreamedSound streamSnd;	// SoundFile-&amp;gt;type == SAT_STREAMED&lt;br /&gt;
  PrimedSound primedSnd;	// SoundFile-&amp;gt;type == SAT_PRIMED&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct SoundFile	// 0x10&lt;br /&gt;
{&lt;br /&gt;
	snd_alias_type_t type;&lt;br /&gt;
	bool exists;&lt;br /&gt;
	SoundFileRef sound;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct snd_alias_t&lt;br /&gt;
{&lt;br /&gt;
  const char *aliasName;&lt;br /&gt;
  const char *subtitle;&lt;br /&gt;
  const char *secondaryAliasName;&lt;br /&gt;
  const char *chainAliasName;&lt;br /&gt;
#ifndef COD4&lt;br /&gt;
  const char *mixerGroup;&lt;br /&gt;
#endif&lt;br /&gt;
  SoundFile *soundFile;&lt;br /&gt;
  int sequence;&lt;br /&gt;
  float volMin;&lt;br /&gt;
  float volMax;&lt;br /&gt;
#if defined(MW3) || defined(GHOSTS)&lt;br /&gt;
  int volModIndex;&lt;br /&gt;
#endif&lt;br /&gt;
  float pitchMin;&lt;br /&gt;
  float pitchMax;&lt;br /&gt;
  float distMin;&lt;br /&gt;
  float distMax;&lt;br /&gt;
#ifndef COD4&lt;br /&gt;
  float velocityMin;&lt;br /&gt;
#endif&lt;br /&gt;
  int flags;&lt;br /&gt;
#if defined(MW3) || defined(GHOSTS)&lt;br /&gt;
  char masterPriority;&lt;br /&gt;
  float masterPercentage;&lt;br /&gt;
#endif&lt;br /&gt;
  float slavePercentage;&lt;br /&gt;
  float probability;&lt;br /&gt;
  float lfePercentage;&lt;br /&gt;
  float centerPercentage;&lt;br /&gt;
  int startDelay;&lt;br /&gt;
  SndCurve *volumeFalloffCurve;&lt;br /&gt;
#ifdef GHOSTS&lt;br /&gt;
  SndCurve *lpfCurve;&lt;br /&gt;
  SndCurve *reverbSendCurve;&lt;br /&gt;
#endif&lt;br /&gt;
  float envelopMin;&lt;br /&gt;
  float envelopMax;&lt;br /&gt;
  float envelopPercentage;&lt;br /&gt;
  SpeakerMap *speakerMap;&lt;br /&gt;
#ifdef GHOSTS&lt;br /&gt;
  float wetMixOverride;&lt;br /&gt;
  OcclusionShape *occlusionShape;&lt;br /&gt;
  char allowDoppler;&lt;br /&gt;
  DopplerPreset *dopplerPreset;&lt;br /&gt;
#endif&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct snd_alias_list_t&lt;br /&gt;
{&lt;br /&gt;
  const char *aliasName;&lt;br /&gt;
  snd_alias_t *head;&lt;br /&gt;
  int count;&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
== World at War ==&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
struct PrimedSound&lt;br /&gt;
{&lt;br /&gt;
	const char *unknownString;&lt;br /&gt;
	const char *buffer;&lt;br /&gt;
	int unknown;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct StreamedSound&lt;br /&gt;
{&lt;br /&gt;
	struct&lt;br /&gt;
	{&lt;br /&gt;
		int unknown;&lt;br /&gt;
		const char *unknownStrings[2];&lt;br /&gt;
	};&lt;br /&gt;
	PrimedSound *primedSnd;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct SoundFile&lt;br /&gt;
{&lt;br /&gt;
	snd_alias_type_t type;&lt;br /&gt;
	bool exists;&lt;br /&gt;
	union&lt;br /&gt;
	{&lt;br /&gt;
		StreamedSound streamSnd;&lt;br /&gt;
		LoadedSound *loadSnd;&lt;br /&gt;
	} u;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct snd_alias_t	// 0xB8&lt;br /&gt;
{&lt;br /&gt;
	const char *aliasName;&lt;br /&gt;
	unsigned int aliasNameHash;&lt;br /&gt;
	const char *subtitle;&lt;br /&gt;
	const char *secondaryAliasName;&lt;br /&gt;
	const char *chainAliasName;&lt;br /&gt;
	SoundFile *soundFile;&lt;br /&gt;
	int sequence;&lt;br /&gt;
	float volMin;&lt;br /&gt;
	float volMax;&lt;br /&gt;
	float pitchMin;&lt;br /&gt;
	float pitchMax;&lt;br /&gt;
	float distMin;&lt;br /&gt;
	float distMax;&lt;br /&gt;
	float distReverbMax;&lt;br /&gt;
	float slavePercentage;&lt;br /&gt;
	float probability;&lt;br /&gt;
	float lifePercentage;&lt;br /&gt;
	float centerPercentage;&lt;br /&gt;
	float envelopMin;&lt;br /&gt;
	float envelopMax;&lt;br /&gt;
	float realDelay;&lt;br /&gt;
	int minPriority;&lt;br /&gt;
	float maxPriority;&lt;br /&gt;
	float minPriorityThreshold;&lt;br /&gt;
	float maxPriorityThreshold;&lt;br /&gt;
	float reverbSend;&lt;br /&gt;
	float teamVolMod;&lt;br /&gt;
	float teamPitchMod;&lt;br /&gt;
	float occlusionLevel;&lt;br /&gt;
	float occlusionWetDry;&lt;br /&gt;
	float moveTime;&lt;br /&gt;
	int startDelay;&lt;br /&gt;
	int speakerMap;&lt;br /&gt;
	int flags;&lt;br /&gt;
	int volumeFallOffCurve;&lt;br /&gt;
	int reverbFallOffCurve;&lt;br /&gt;
	int volumeMinFallOffCurve;&lt;br /&gt;
	int reverbMinFallOfCurve;&lt;br /&gt;
	int limitCount;&lt;br /&gt;
	int limitType;&lt;br /&gt;
	int entityLimitCount;&lt;br /&gt;
	int entityLimitType;&lt;br /&gt;
	int randomizeType;&lt;br /&gt;
	float cylInnerRadius;&lt;br /&gt;
	float cylOuterRadius;&lt;br /&gt;
	float cylOuterLevel;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct snd_alias_list_t&lt;br /&gt;
{&lt;br /&gt;
	const char *aliasName;&lt;br /&gt;
	snd_alias_t *head;&lt;br /&gt;
	int count;&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
== Black Ops ==&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
struct SndIndexEntry&lt;br /&gt;
{&lt;br /&gt;
  unsigned __int16 value;&lt;br /&gt;
  unsigned __int16 next;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct snd_radverb&lt;br /&gt;
{&lt;br /&gt;
  char name[32];&lt;br /&gt;
  unsigned int id;&lt;br /&gt;
  float smoothing;&lt;br /&gt;
  float earlyTime;&lt;br /&gt;
  float lateTime;&lt;br /&gt;
  float earlyGain;&lt;br /&gt;
  float lateGain;&lt;br /&gt;
  float returnGain;&lt;br /&gt;
  float earlyLpf;&lt;br /&gt;
  float lateLpf;&lt;br /&gt;
  float inputLpf;&lt;br /&gt;
  float dampLpf;&lt;br /&gt;
  float wallReflect;&lt;br /&gt;
  float dryGain;&lt;br /&gt;
  float earlySize;&lt;br /&gt;
  float lateSize;&lt;br /&gt;
  float diffusion;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct snd_snapshot&lt;br /&gt;
{&lt;br /&gt;
  char name[32];&lt;br /&gt;
  unsigned int id;&lt;br /&gt;
  char occlusionName[32];&lt;br /&gt;
  unsigned int occlusionId;&lt;br /&gt;
  float fadeIn;&lt;br /&gt;
  float fadeOut;&lt;br /&gt;
  float distance;&lt;br /&gt;
  unsigned int fadeInCurve;&lt;br /&gt;
  unsigned int fadeOutCurve;&lt;br /&gt;
  float attenuation[64];&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct snd_alias_t&lt;br /&gt;
{&lt;br /&gt;
  const char *name;&lt;br /&gt;
  unsigned int id;&lt;br /&gt;
  const char *subtitle;&lt;br /&gt;
  const char *secondaryname;&lt;br /&gt;
  SoundFile *soundFile;&lt;br /&gt;
  unsigned int flags;&lt;br /&gt;
  unsigned int duck;&lt;br /&gt;
  unsigned int contextType;&lt;br /&gt;
  unsigned int contextValue;&lt;br /&gt;
  unsigned __int16 fluxTime;&lt;br /&gt;
  unsigned __int16 startDelay;&lt;br /&gt;
  unsigned __int16 reverbSend;&lt;br /&gt;
  unsigned __int16 centerSend;&lt;br /&gt;
  unsigned __int16 volMin;&lt;br /&gt;
  unsigned __int16 volMax;&lt;br /&gt;
  unsigned __int16 teamVolMod;&lt;br /&gt;
  unsigned __int16 pitchMin;&lt;br /&gt;
  unsigned __int16 pitchMax;&lt;br /&gt;
  unsigned __int16 teamPitchMod;&lt;br /&gt;
  unsigned __int16 distMin;&lt;br /&gt;
  unsigned __int16 distMax;&lt;br /&gt;
  unsigned __int16 distReverbMax;&lt;br /&gt;
  unsigned __int16 envelopMin;&lt;br /&gt;
  unsigned __int16 envelopMax;&lt;br /&gt;
  unsigned __int16 envelopPercentage;&lt;br /&gt;
  char minPriorityThreshold;&lt;br /&gt;
  char maxPriorityThreshold;&lt;br /&gt;
  char probability;&lt;br /&gt;
  char occlusionLevel;&lt;br /&gt;
  char occlusionWetDry;&lt;br /&gt;
  char minPriority;&lt;br /&gt;
  char maxPriority;&lt;br /&gt;
  char pan;&lt;br /&gt;
  char dryCurve;&lt;br /&gt;
  char wetCurve;&lt;br /&gt;
  char dryMinCurve;&lt;br /&gt;
  char wetMinCurve;&lt;br /&gt;
  char limitCount;&lt;br /&gt;
  char entityLimitCount;&lt;br /&gt;
  char snapshotGroup;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct SndBank&lt;br /&gt;
{&lt;br /&gt;
  const char *name;&lt;br /&gt;
  unsigned int aliasCount;&lt;br /&gt;
  snd_alias_list_t *alias;&lt;br /&gt;
  SndIndexEntry *aliasIndex;&lt;br /&gt;
  unsigned int packHash;&lt;br /&gt;
  unsigned int packLocation;&lt;br /&gt;
  unsigned int radverbCount;&lt;br /&gt;
  snd_radverb *radverbs;&lt;br /&gt;
  unsigned int snapshotCount;&lt;br /&gt;
  snd_snapshot *snapshots;&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Black Ops 2 ==&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
enum SndBankState&lt;br /&gt;
{&lt;br /&gt;
  SND_BANK_STATE_NEW = 0x0,&lt;br /&gt;
  SND_BANK_STATE_STREAM_HEADER = 0x1,&lt;br /&gt;
  SND_BANK_STATE_STREAM_TOC = 0x2,&lt;br /&gt;
  SND_BANK_STATE_LOADED_HEADER = 0x3,&lt;br /&gt;
  SND_BANK_STATE_LOADED_TOC = 0x4,&lt;br /&gt;
  SND_BANK_STATE_LOADED_ASSET_WAIT = 0x5,&lt;br /&gt;
  SND_BANK_STATE_LOADED_ASSETS = 0x6,&lt;br /&gt;
  SND_BANK_STATE_READY_TO_USE = 0x7,&lt;br /&gt;
  SND_BANK_STATE_ERROR = 0x8,&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct SndAssetBankEntry&lt;br /&gt;
{&lt;br /&gt;
  unsigned int id;&lt;br /&gt;
  unsigned int size;&lt;br /&gt;
  unsigned int offset;&lt;br /&gt;
  unsigned int frameCount;&lt;br /&gt;
  char frameRateIndex;&lt;br /&gt;
  char channelCount;&lt;br /&gt;
  char looping;&lt;br /&gt;
  char format;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct SndLoadedAssets // 0x1C&lt;br /&gt;
{&lt;br /&gt;
  const char *zone;&lt;br /&gt;
  const char *language;&lt;br /&gt;
  unsigned int loadedCount;&lt;br /&gt;
  unsigned int entryCount;&lt;br /&gt;
  SndAssetBankEntry *entries;&lt;br /&gt;
  unsigned int dataSize;&lt;br /&gt;
  char *data;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct SndDuck	// 0x4C&lt;br /&gt;
{&lt;br /&gt;
  char name[32];&lt;br /&gt;
  unsigned int id;&lt;br /&gt;
  float fadeIn;&lt;br /&gt;
  float fadeOut;&lt;br /&gt;
  float startDelay;&lt;br /&gt;
  float distance;&lt;br /&gt;
  float length;&lt;br /&gt;
  unsigned int fadeInCurve;&lt;br /&gt;
  unsigned int fadeOutCurve;&lt;br /&gt;
  float *attenuation;&lt;br /&gt;
  float *filter;&lt;br /&gt;
  int updateWhilePaused;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct SndAlias&lt;br /&gt;
{&lt;br /&gt;
  const char *name;&lt;br /&gt;
  unsigned int id;&lt;br /&gt;
  const char *subtitle;&lt;br /&gt;
  const char *secondaryname;&lt;br /&gt;
  unsigned int assetId;&lt;br /&gt;
  const char *assetFileName;&lt;br /&gt;
  unsigned int flags0;&lt;br /&gt;
  unsigned int flags1;&lt;br /&gt;
  unsigned int duck;&lt;br /&gt;
  unsigned int contextType;&lt;br /&gt;
  unsigned int contextValue;&lt;br /&gt;
  unsigned int stopOnPlay;&lt;br /&gt;
  unsigned int futzPatch;&lt;br /&gt;
  unsigned __int16 fluxTime;&lt;br /&gt;
  unsigned __int16 startDelay;&lt;br /&gt;
  unsigned __int16 reverbSend;&lt;br /&gt;
  unsigned __int16 centerSend;&lt;br /&gt;
  unsigned __int16 volMin;&lt;br /&gt;
  unsigned __int16 volMax;&lt;br /&gt;
  unsigned __int16 pitchMin;&lt;br /&gt;
  unsigned __int16 pitchMax;&lt;br /&gt;
  unsigned __int16 distMin;&lt;br /&gt;
  unsigned __int16 distMax;&lt;br /&gt;
  unsigned __int16 distReverbMax;&lt;br /&gt;
  unsigned __int16 envelopMin;&lt;br /&gt;
  unsigned __int16 envelopMax;&lt;br /&gt;
  unsigned __int16 envelopPercentage;&lt;br /&gt;
  __int16 fadeIn;&lt;br /&gt;
  __int16 fadeOut;&lt;br /&gt;
  __int16 dopplerScale;&lt;br /&gt;
  char minPriorityThreshold;&lt;br /&gt;
  char maxPriorityThreshold;&lt;br /&gt;
  char probability;&lt;br /&gt;
  char occlusionLevel;&lt;br /&gt;
  char minPriority;&lt;br /&gt;
  char maxPriority;&lt;br /&gt;
  char pan;&lt;br /&gt;
  char limitCount;&lt;br /&gt;
  char entityLimitCount;&lt;br /&gt;
  char duckGroup;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct SndAliasList // 0x14&lt;br /&gt;
{&lt;br /&gt;
  const char *name;&lt;br /&gt;
  unsigned int id;&lt;br /&gt;
  SndAlias *head;&lt;br /&gt;
  int count;&lt;br /&gt;
  int sequence;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct SndRadverb&lt;br /&gt;
{&lt;br /&gt;
  char name[32];&lt;br /&gt;
  unsigned int id;&lt;br /&gt;
  float smoothing;&lt;br /&gt;
  float earlyTime;&lt;br /&gt;
  float lateTime;&lt;br /&gt;
  float earlyGain;&lt;br /&gt;
  float lateGain;&lt;br /&gt;
  float returnGain;&lt;br /&gt;
  float earlyLpf;&lt;br /&gt;
  float lateLpf;&lt;br /&gt;
  float inputLpf;&lt;br /&gt;
  float dampLpf;&lt;br /&gt;
  float wallReflect;&lt;br /&gt;
  float dryGain;&lt;br /&gt;
  float earlySize;&lt;br /&gt;
  float lateSize;&lt;br /&gt;
  float diffusion;&lt;br /&gt;
  float returnHighpass;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct SndIndexEntry&lt;br /&gt;
{&lt;br /&gt;
  unsigned __int16 value;&lt;br /&gt;
  unsigned __int16 next;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct SndAssetBankHeader&lt;br /&gt;
{&lt;br /&gt;
  unsigned int magic;&lt;br /&gt;
  unsigned int version;&lt;br /&gt;
  unsigned int entrySize;&lt;br /&gt;
  unsigned int checksumSize;&lt;br /&gt;
  unsigned int dependencySize;&lt;br /&gt;
  unsigned int entryCount;&lt;br /&gt;
  unsigned int dependencyCount;&lt;br /&gt;
  unsigned int pad32;&lt;br /&gt;
  __int64 fileSize;&lt;br /&gt;
  __int64 entryOffset;&lt;br /&gt;
  __int64 checksumOffset;&lt;br /&gt;
  char checksumChecksum[16];&lt;br /&gt;
  char dependencies[512];&lt;br /&gt;
  char padding[1464];&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
#pragma pack(push, 1)&lt;br /&gt;
struct SndRuntimeAssetBank&lt;br /&gt;
{&lt;br /&gt;
  const char *zone;&lt;br /&gt;
  const char *language;&lt;br /&gt;
  int fileHandle;&lt;br /&gt;
  SndAssetBankHeader header;&lt;br /&gt;
  unsigned int entryOffset;&lt;br /&gt;
  char linkTimeChecksum[16];&lt;br /&gt;
  char filename[256];&lt;br /&gt;
  bool indicesLoaded;&lt;br /&gt;
  bool indicesAllocated;&lt;br /&gt;
};&lt;br /&gt;
#pragma pack(pop)&lt;br /&gt;
&lt;br /&gt;
struct SndDialogScriptIdLookup&lt;br /&gt;
{&lt;br /&gt;
  unsigned int scriptId;&lt;br /&gt;
  unsigned int aliasId;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct SndBank // 0x1294&lt;br /&gt;
{&lt;br /&gt;
  const char *name;&lt;br /&gt;
  unsigned int aliasCount;&lt;br /&gt;
  SndAliasList *alias;&lt;br /&gt;
  SndIndexEntry *aliasIndex;&lt;br /&gt;
  unsigned int radverbCount;&lt;br /&gt;
  SndRadverb *radverbs;&lt;br /&gt;
  unsigned int duckCount;&lt;br /&gt;
  SndDuck *ducks;&lt;br /&gt;
  SndRuntimeAssetBank streamAssetBank;&lt;br /&gt;
  SndRuntimeAssetBank loadAssetBank;&lt;br /&gt;
  SndLoadedAssets loadedAssets;&lt;br /&gt;
  unsigned int scriptIdLookupCount;&lt;br /&gt;
  SndDialogScriptIdLookup *scriptIdLookups;&lt;br /&gt;
  SndBankState state;&lt;br /&gt;
  int streamRequestId;&lt;br /&gt;
  bool pendingIo;&lt;br /&gt;
  bool ioError;&lt;br /&gt;
  bool runtimeAssetLoad;&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Therifboy</name></author>
	</entry>
	<entry>
		<id>https://codresearch.dev/index.php?title=Material_Asset&amp;diff=816</id>
		<title>Material Asset</title>
		<link rel="alternate" type="text/html" href="https://codresearch.dev/index.php?title=Material_Asset&amp;diff=816"/>
		<updated>2015-01-12T14:52:42Z</updated>

		<summary type="html">&lt;p&gt;Therifboy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
[[Category:Assets]]&lt;br /&gt;
[[Category:CoD4]]&lt;br /&gt;
[[Category:WaW]]&lt;br /&gt;
[[Category:MW2]]&lt;br /&gt;
[[Category:BO1]]&lt;br /&gt;
[[Category:MW3]]&lt;br /&gt;
[[Category:BO2]]&lt;br /&gt;
[[Category:Ghosts]]&lt;br /&gt;
== Call of Duty 4 &amp;amp; World at War &amp;amp; Modern Warfare 2 &amp;amp; Modern Warfare 3 ==&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
struct MaterialConstantDef &lt;br /&gt;
{&lt;br /&gt;
	int nameHash;&lt;br /&gt;
	char name[12];&lt;br /&gt;
	vec4_t literal;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct GfxStateBits &lt;br /&gt;
{&lt;br /&gt;
#ifdef XBOX&lt;br /&gt;
	int loadBits[2];&lt;br /&gt;
#elif defined(PS3)&lt;br /&gt;
	int (*loadBits)[2];&lt;br /&gt;
 #if defined(MW2) || defined(MW3)&lt;br /&gt;
	int unknown;&lt;br /&gt;
 #endif&lt;br /&gt;
#endif&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct WaterWritable&lt;br /&gt;
{&lt;br /&gt;
	float floatTime;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct water_t &lt;br /&gt;
{&lt;br /&gt;
	WaterWritable writable;&lt;br /&gt;
	float *H0X;		// Count = M * N&lt;br /&gt;
	float *H0Y;		// Count = M * N&lt;br /&gt;
	float *wTerm;		// Count = M * N&lt;br /&gt;
	int M;&lt;br /&gt;
	int N;&lt;br /&gt;
	float Lx;&lt;br /&gt;
	float Lz;&lt;br /&gt;
	float gravity;&lt;br /&gt;
	float windvel;&lt;br /&gt;
	float winddir[2];&lt;br /&gt;
	float amplitude;&lt;br /&gt;
	float codeConstant[4];&lt;br /&gt;
	GfxImage *image;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
/* MaterialTextureDef-&amp;gt;semantic */&lt;br /&gt;
#define TS_2D		0x0&lt;br /&gt;
#define TS_FUNCTION	0x1&lt;br /&gt;
#define TS_COLOR_MAP	0x2&lt;br /&gt;
#define TS_UNUSED_1	0x3&lt;br /&gt;
#define TS_UNUSED_2	0x4&lt;br /&gt;
#define TS_NORMAL_MAP	0x5&lt;br /&gt;
#define TS_UNUSED_3	0x6&lt;br /&gt;
#define TS_UNUSED_4	0x7&lt;br /&gt;
#define TS_SPECULAR_MAP	0x8&lt;br /&gt;
#define TS_UNUSED_5	0x9&lt;br /&gt;
#define TS_UNUSED_6	0xA&lt;br /&gt;
#define TS_WATER_MAP	0xB&lt;br /&gt;
&lt;br /&gt;
union MaterialTextureDefInfo &lt;br /&gt;
{&lt;br /&gt;
	GfxImage *image;	// MaterialTextureDef-&amp;gt;semantic != TS_WATER_MAP&lt;br /&gt;
	water_t *water;		// MaterialTextureDef-&amp;gt;semantic == TS_WATER_MAP&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct MaterialTextureDef&lt;br /&gt;
{&lt;br /&gt;
	unsigned int nameHash;&lt;br /&gt;
	char nameStart;&lt;br /&gt;
	char nameEnd;&lt;br /&gt;
	char sampleState;&lt;br /&gt;
	char semantic;&lt;br /&gt;
#ifdef WAW&lt;br /&gt;
	int unknown;&lt;br /&gt;
#endif&lt;br /&gt;
	MaterialTextureDefInfo u;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
union GFxDrawSurfFields&lt;br /&gt;
{&lt;br /&gt;
	unsigned long long unused,&lt;br /&gt;
			primarySortKey,&lt;br /&gt;
			surfType,&lt;br /&gt;
			primaryLightIndex,&lt;br /&gt;
			prepass,&lt;br /&gt;
			materialSortedIndex,&lt;br /&gt;
			customIndex,&lt;br /&gt;
			reflectionProbeIndex,&lt;br /&gt;
			objectId;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
union GfxDrawSurf &lt;br /&gt;
{&lt;br /&gt;
	GFxDrawSurfFields fields;&lt;br /&gt;
	unsigned long long packed;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct __declspec(align(8)) MaterialInfo&lt;br /&gt;
{&lt;br /&gt;
	const char *name;&lt;br /&gt;
	char gameFlags;&lt;br /&gt;
	char sortKey;&lt;br /&gt;
	char textureAtlasRowCount;&lt;br /&gt;
	char textureAtlasColumnCount;&lt;br /&gt;
	GfxDrawSurf drawSurf;&lt;br /&gt;
	int surfaceTypeBits;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct Material&lt;br /&gt;
{&lt;br /&gt;
	MaterialInfo info;&lt;br /&gt;
	char stateBitsEntry[TECHNIQUE_COUNT];	// see MaterialTechniqueType&lt;br /&gt;
	char textureCount;&lt;br /&gt;
	char constantCount;&lt;br /&gt;
	char stateBitsCount;&lt;br /&gt;
	char stateFlags;&lt;br /&gt;
	char cameraRegion;&lt;br /&gt;
#ifdef PS3&lt;br /&gt;
	unsigned short ushorts[TECHNIQUE_COUNT];&lt;br /&gt;
	unsigned short *ushortArray;	// count = TECHNIQUE_COUNT, see MaterialTechniqueType&lt;br /&gt;
#endif&lt;br /&gt;
	MaterialTechniqueSet *techniqueSet;&lt;br /&gt;
	MaterialTextureDef *textureTable;&lt;br /&gt;
	MaterialConstantDef *constantTable;&lt;br /&gt;
	GfxStateBits *stateBitTable;&lt;br /&gt;
#if defined(MW2) || defined(MW3)&lt;br /&gt;
	const char **unknownXStringArray;&lt;br /&gt;
#endif&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
== Black Ops &amp;amp; Black Ops 2==&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
struct MaterialConstantDef &lt;br /&gt;
{&lt;br /&gt;
  unsigned int nameHash;&lt;br /&gt;
  char name[12];&lt;br /&gt;
  vec4_t literal;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct GfxStateBits &lt;br /&gt;
{&lt;br /&gt;
#if defined(XBOX) || defined(BO2)	// ps3 uses this for bo2..&lt;br /&gt;
  unsigned int loadBits[2];&lt;br /&gt;
#elif defined PS3&lt;br /&gt;
	int (*loadBits)[2];&lt;br /&gt;
#endif&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct WaterWritable&lt;br /&gt;
{&lt;br /&gt;
	float floatTime;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct water_t &lt;br /&gt;
{&lt;br /&gt;
	WaterWritable writable;&lt;br /&gt;
	float *H0X;		// Count = M * N&lt;br /&gt;
	float *H0Y;		// Count = M * N&lt;br /&gt;
	float *wTerm;		// Count = M * N&lt;br /&gt;
	int M;&lt;br /&gt;
	int N;&lt;br /&gt;
	float Lx;&lt;br /&gt;
	float Lz;&lt;br /&gt;
	float gravity;&lt;br /&gt;
	float windvel;&lt;br /&gt;
	float winddir[2];&lt;br /&gt;
	float amplitude;&lt;br /&gt;
	float codeConstant[4];&lt;br /&gt;
	GfxImage *image;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
/* MaterialTextureDef-&amp;gt;semantic */&lt;br /&gt;
#define TS_2D		0x0&lt;br /&gt;
#define TS_FUNCTION	0x1&lt;br /&gt;
#define TS_COLOR_MAP	0x2&lt;br /&gt;
#define TS_UNUSED_1	0x3&lt;br /&gt;
#define TS_UNUSED_2	0x4&lt;br /&gt;
#define TS_NORMAL_MAP	0x5&lt;br /&gt;
#define TS_UNUSED_3	0x6&lt;br /&gt;
#define TS_UNUSED_4	0x7&lt;br /&gt;
#define TS_SPECULAR_MAP	0x8&lt;br /&gt;
#define TS_UNUSED_5	0x9&lt;br /&gt;
#define TS_UNUSED_6	0xA&lt;br /&gt;
#define TS_WATER_MAP	0xB&lt;br /&gt;
&lt;br /&gt;
union MaterialTextureDefInfo &lt;br /&gt;
{&lt;br /&gt;
  GfxImage *image;	// MaterialTextureDef-&amp;gt;semantic != TS_WATER_MAP&lt;br /&gt;
  water_t *water;		// MaterialTextureDef-&amp;gt;semantic == TS_WATER_MAP&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct MaterialTextureDef&lt;br /&gt;
{&lt;br /&gt;
  unsigned int nameHash;&lt;br /&gt;
  char nameStart;&lt;br /&gt;
  char nameEnd;&lt;br /&gt;
  char samplerState;&lt;br /&gt;
  char semantic;&lt;br /&gt;
  char isMatureContent;&lt;br /&gt;
#ifdef BO1&lt;br /&gt;
  MaterialTextureDefInfo u;&lt;br /&gt;
#elif&lt;br /&gt;
  GfxImage *image;&lt;br /&gt;
#endif&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
union GFxDrawSurfFields&lt;br /&gt;
{&lt;br /&gt;
	unsigned long long unused,&lt;br /&gt;
			primarySortKey,&lt;br /&gt;
			surfType,&lt;br /&gt;
			primaryLightIndex,&lt;br /&gt;
			prepass,&lt;br /&gt;
			materialSortedIndex,&lt;br /&gt;
			customIndex,&lt;br /&gt;
			reflectionProbeIndex,&lt;br /&gt;
			objectId;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
union GfxDrawSurf &lt;br /&gt;
{&lt;br /&gt;
  GFxDrawSurfFields fields;&lt;br /&gt;
  unsigned long long packed;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct MaterialInfo&lt;br /&gt;
{&lt;br /&gt;
  const char *name;&lt;br /&gt;
  unsigned int gameFlags;&lt;br /&gt;
  char pad;&lt;br /&gt;
  char sortKey;&lt;br /&gt;
  char textureAtlasRowCount;&lt;br /&gt;
  char textureAtlasColumnCount;&lt;br /&gt;
  GfxDrawSurf drawSurf;&lt;br /&gt;
  unsigned int surfaceTypeBits;&lt;br /&gt;
  unsigned int layeredSurfaceTypes;&lt;br /&gt;
  unsigned __int16 hashIndex;&lt;br /&gt;
  int surfaceFlags;&lt;br /&gt;
#ifdef BO2&lt;br /&gt;
  int contents;&lt;br /&gt;
#endif&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct Material&lt;br /&gt;
{&lt;br /&gt;
  MaterialInfo info;&lt;br /&gt;
  char stateBitsEntry[TECHNIQUE_COUNT];	// see MaterialTechniqueType&lt;br /&gt;
  char textureCount;&lt;br /&gt;
  char constantCount;&lt;br /&gt;
  char stateBitsCount;&lt;br /&gt;
  char stateFlags;&lt;br /&gt;
  char cameraRegion;&lt;br /&gt;
  char probeMipBits;&lt;br /&gt;
  MaterialTechniqueSet *techniqueSet;&lt;br /&gt;
  MaterialTextureDef *textureTable;&lt;br /&gt;
  MaterialConstantDef *constantTable;&lt;br /&gt;
  GfxStateBits *stateBitTable;&lt;br /&gt;
#ifdef BO2&lt;br /&gt;
  Material *thermalMaterial;&lt;br /&gt;
#endif&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Ghosts ==&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
struct MaterialConstantDef &lt;br /&gt;
{&lt;br /&gt;
	unsigned int nameHash;&lt;br /&gt;
	char name[12];&lt;br /&gt;
	float literal[4];&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct GfxStateBits&lt;br /&gt;
{&lt;br /&gt;
	int (*loadBits)[3];&lt;br /&gt;
	char unknown1[0xE];&lt;br /&gt;
	char unknown2[0xE];&lt;br /&gt;
	char unknown3[2];&lt;br /&gt;
	char unknown4[2];&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct WaterWritable&lt;br /&gt;
{&lt;br /&gt;
	float floatTime;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct water_t &lt;br /&gt;
{&lt;br /&gt;
	WaterWritable writable;&lt;br /&gt;
	float *H0X;	// Count = M * N&lt;br /&gt;
	float *H0Y;	// Count = M * N&lt;br /&gt;
	float *wTerm;	// Count = M * N&lt;br /&gt;
	int M;&lt;br /&gt;
	int N;&lt;br /&gt;
	float Lx;&lt;br /&gt;
	float Lz;&lt;br /&gt;
	float gravity;&lt;br /&gt;
	float windvel;&lt;br /&gt;
	float winddir[2];&lt;br /&gt;
	float amplitude;&lt;br /&gt;
	float codeConstant[4];&lt;br /&gt;
	GfxImage *image;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
/* MaterialTextureDef-&amp;gt;semantic */&lt;br /&gt;
#define TS_2D		0x0&lt;br /&gt;
#define TS_FUNCTION	0x1&lt;br /&gt;
#define TS_COLOR_MAP	0x2&lt;br /&gt;
#define TS_UNUSED_1	0x3&lt;br /&gt;
#define TS_UNUSED_2	0x4&lt;br /&gt;
#define TS_NORMAL_MAP	0x5&lt;br /&gt;
#define TS_UNUSED_3	0x6&lt;br /&gt;
#define TS_UNUSED_4	0x7&lt;br /&gt;
#define TS_SPECULAR_MAP	0x8&lt;br /&gt;
#define TS_UNUSED_5	0x9&lt;br /&gt;
#define TS_UNUSED_6	0xA&lt;br /&gt;
#define TS_WATER_MAP	0xB&lt;br /&gt;
&lt;br /&gt;
union MaterialTextureDefInfo &lt;br /&gt;
{&lt;br /&gt;
	GfxImage *image;&lt;br /&gt;
	water_t *water;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct MaterialTextureDef&lt;br /&gt;
{&lt;br /&gt;
	unsigned int nameHash;&lt;br /&gt;
	char nameStart;&lt;br /&gt;
	char nameEnd;&lt;br /&gt;
	char sampleState;&lt;br /&gt;
	char semantic;&lt;br /&gt;
	MaterialTextureDefInfo u;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
union GFxDrawSurfFields&lt;br /&gt;
{&lt;br /&gt;
	unsigned long long unused,&lt;br /&gt;
			primarySortKey,&lt;br /&gt;
			surfType,&lt;br /&gt;
			primaryLightIndex,&lt;br /&gt;
			prepass,&lt;br /&gt;
			materialSortedIndex,&lt;br /&gt;
			customIndex,&lt;br /&gt;
			reflectionProbeIndex,&lt;br /&gt;
			objectId;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
union GfxDrawSurf &lt;br /&gt;
{&lt;br /&gt;
	GFxDrawSurfFields fields;&lt;br /&gt;
	unsigned long long packed;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct __declspec(align(8)) MaterialInfo // 0x20&lt;br /&gt;
{&lt;br /&gt;
	const char *name;&lt;br /&gt;
	char gameFlags;&lt;br /&gt;
	char sortKey;&lt;br /&gt;
	char textureAtlasRowCount;&lt;br /&gt;
	char textureAtlasColumnCount;&lt;br /&gt;
	GfxDrawSurf drawSurf;&lt;br /&gt;
	int surfaceTypeBits;&lt;br /&gt;
	char unknown[0xC];&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct Material	// 0xB8&lt;br /&gt;
{&lt;br /&gt;
	MaterialInfo info;&lt;br /&gt;
	char stateBitsEntry[TECHNIQUE_COUNT];	// see MaterialTechniqueType&lt;br /&gt;
	char textureCount;	// 0x47&lt;br /&gt;
	char constantCount;	// 0x48&lt;br /&gt;
	char stateBitsCount;	// 0x49&lt;br /&gt;
	char stateFlags;	// 0x4A&lt;br /&gt;
	char cameraRegion;	// 0x4B&lt;br /&gt;
	char unknown;		// 0x4C&lt;br /&gt;
	char stringCount;	// 0x4D&lt;br /&gt;
#ifdef PS3&lt;br /&gt;
	unsigned short ushorts[TECHNIQUE_COUNT];&lt;br /&gt;
	unsigned short *ushortArray;		// count = TECHNIQUE_COUNT, see MaterialTechniqueType&lt;br /&gt;
#endif&lt;br /&gt;
	MaterialTechniqueSet *techniqueSet;&lt;br /&gt;
	MaterialTextureDef *textureTable;	// count = textureCount&lt;br /&gt;
	MaterialConstantDef *constantTable;	// count = constantCount&lt;br /&gt;
	GfxStateBits *stateBitTable;	// count = stateBitsCount&lt;br /&gt;
	const char **XStringArray;	// count = stringCount&lt;br /&gt;
	int unknown;&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Therifboy</name></author>
	</entry>
	<entry>
		<id>https://codresearch.dev/index.php?title=Technique_Set_Asset&amp;diff=815</id>
		<title>Technique Set Asset</title>
		<link rel="alternate" type="text/html" href="https://codresearch.dev/index.php?title=Technique_Set_Asset&amp;diff=815"/>
		<updated>2015-01-12T14:50:34Z</updated>

		<summary type="html">&lt;p&gt;Therifboy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
[[Category:Assets]]&lt;br /&gt;
[[Category:CoD4]]&lt;br /&gt;
[[Category:WaW]]&lt;br /&gt;
[[Category:MW2]]&lt;br /&gt;
[[Category:BO1]]&lt;br /&gt;
[[Category:MW3]]&lt;br /&gt;
[[Category:BO2]]&lt;br /&gt;
[[Category:Ghosts]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
struct MaterialArgumentCodeConst &lt;br /&gt;
{&lt;br /&gt;
	unsigned __int16 index;&lt;br /&gt;
	char firstRow;&lt;br /&gt;
	char rowCount;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
union MaterialArgumentDef &lt;br /&gt;
{&lt;br /&gt;
	const float *literalConst;&lt;br /&gt;
	MaterialArgumentCodeConst codeConst;&lt;br /&gt;
	unsigned int codeSampler;&lt;br /&gt;
	unsigned int nameHash;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
/* MaterialShaderArgument-&amp;gt;type */&lt;br /&gt;
#define MTL_ARG_MATERIAL_VERTEX_CONST	0x0&lt;br /&gt;
#define MTL_ARG_LITERAL_VERTEX_CONST	0x1&lt;br /&gt;
#define MTL_ARG_MATERIAL_PIXEL_SAMPLER	0x2&lt;br /&gt;
#define  MTL_ARG_CODE_PRIM_BEGIN	0x3&lt;br /&gt;
#define MTL_ARG_CODE_VERTEX_CONST	0x3&lt;br /&gt;
#define MTL_ARG_CODE_PIXEL_SAMPLER	0x4&lt;br /&gt;
#define MTL_ARG_CODE_PIXEL_CONST	0x5&lt;br /&gt;
#define MTL_ARG_MATERIAL_PIXEL_CONST	0x6&lt;br /&gt;
#define  MTL_ARG_CODE_PRIM_END		0x6&lt;br /&gt;
#define MTL_ARG_LITERAL_PIXEL_CONST	0x7&lt;br /&gt;
#define MLT_ARG_COUNT			0x8&lt;br /&gt;
&lt;br /&gt;
struct MaterialShaderArgument&lt;br /&gt;
{&lt;br /&gt;
	unsigned __int16 type;&lt;br /&gt;
	unsigned __int16 dest;&lt;br /&gt;
	MaterialArgumentDef u;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct MaterialVertexDeclaration&lt;br /&gt;
{&lt;br /&gt;
#if defined(COD4) || defined(WAW) || defined(BO1)&lt;br /&gt;
	char unknown[0x22];&lt;br /&gt;
#elif defined(MW2) || defined(MW3)&lt;br /&gt;
	char unknown[0x1C];&lt;br /&gt;
#elif defined(GHOSTS)&lt;br /&gt;
	char unknown[0x20];&lt;br /&gt;
#endif&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
#pragma pack(push, 4)&lt;br /&gt;
struct MaterialPass &lt;br /&gt;
{&lt;br /&gt;
	MaterialVertexDeclaration *vertexDecl;&lt;br /&gt;
	MaterialVertexShader *vertexShader;&lt;br /&gt;
	MaterialPixelShader *pixelShader;&lt;br /&gt;
	char perPrimArgCount;&lt;br /&gt;
	char perObjArgCount;&lt;br /&gt;
	char stableArgCount;&lt;br /&gt;
	char customSamplerFlags;&lt;br /&gt;
	char precompiledIndex;&lt;br /&gt;
	MaterialShaderArgument *args;&lt;br /&gt;
};&lt;br /&gt;
#pragma pack(pop)&lt;br /&gt;
&lt;br /&gt;
struct MaterialTechnique &lt;br /&gt;
{&lt;br /&gt;
	const char *name;&lt;br /&gt;
	unsigned __int16 flags;&lt;br /&gt;
	unsigned __int16 passCount;&lt;br /&gt;
	MaterialPass passArray[1];	// count = passCount&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
/* MaterialTechniqueSet-&amp;gt;worldVertFormat */&lt;br /&gt;
enum MaterialWorldVertexFormat : char&lt;br /&gt;
{&lt;br /&gt;
  MTL_WORLDVERT_TEX_1_NRM_1 = 0x0,&lt;br /&gt;
  MTL_WORLDVERT_TEX_2_NRM_1 = 0x1,&lt;br /&gt;
  MTL_WORLDVERT_TEX_2_NRM_2 = 0x2,&lt;br /&gt;
  MTL_WORLDVERT_TEX_3_NRM_1 = 0x3,&lt;br /&gt;
  MTL_WORLDVERT_TEX_3_NRM_2 = 0x4,&lt;br /&gt;
  MTL_WORLDVERT_TEX_3_NRM_3 = 0x5,&lt;br /&gt;
  MTL_WORLDVERT_TEX_4_NRM_1 = 0x6,&lt;br /&gt;
  MTL_WORLDVERT_TEX_4_NRM_2 = 0x7,&lt;br /&gt;
  MTL_WORLDVERT_TEX_4_NRM_3 = 0x8,&lt;br /&gt;
  MTL_WORLDVERT_TEX_5_NRM_1 = 0x9,&lt;br /&gt;
  MTL_WORLDVERT_TEX_5_NRM_2 = 0xA,&lt;br /&gt;
  MTL_WORLDVERT_TEX_5_NRM_3 = 0xB,&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
#ifdef PS3&lt;br /&gt;
 #ifdef COD4&lt;br /&gt;
  #define MAX_TECHNIQUES 26&lt;br /&gt;
 #elif defined(WAW)&lt;br /&gt;
  #define MAX_TECHNIQUES 51&lt;br /&gt;
 #elif defined(MW2)&lt;br /&gt;
  #define MAX_TECHNIQUES 37&lt;br /&gt;
 #elif defined(BO1)&lt;br /&gt;
  #define MAX_TECHNIQUES 71&lt;br /&gt;
 #elif defined(MW3)&lt;br /&gt;
  #define MAX_TECHNIQUES 41&lt;br /&gt;
 #elif defined(GHOSTS)&lt;br /&gt;
  #define MAX_TECHNIQUES 39&lt;br /&gt;
 #endif&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
#ifdef XBOX&lt;br /&gt;
 #ifdef COD4&lt;br /&gt;
  #define MAX_TECHNIQUES 26&lt;br /&gt;
 #elif defined(WAW)&lt;br /&gt;
  #define MAX_TECHNIQUES 51&lt;br /&gt;
 #elif defined(MW2)&lt;br /&gt;
  #define MAX_TECHNIQUES 33&lt;br /&gt;
 #elif defined(BO1)&lt;br /&gt;
  #define MAX_TECHNIQUES 71&lt;br /&gt;
 #elif defined(MW3)&lt;br /&gt;
  #define MAX_TECHNIQUES 37&lt;br /&gt;
 #elif defined(GHOSTS)&lt;br /&gt;
  #define MAX_TECHNIQUES 36&lt;br /&gt;
 #endif&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
#ifdef PC&lt;br /&gt;
 #ifdef COD4&lt;br /&gt;
  #define MAX_TECHNIQUES 34&lt;br /&gt;
 #elif defined(WAW)&lt;br /&gt;
  #define MAX_TECHNIQUES 59&lt;br /&gt;
 #elif defined(MW2)&lt;br /&gt;
  #define MAX_TECHNIQUES 48&lt;br /&gt;
 #elif defined(BO1)&lt;br /&gt;
  #define MAX_TECHNIQUES 130&lt;br /&gt;
 #elif defined(MW3)&lt;br /&gt;
  #define MAX_TECHNIQUES 54&lt;br /&gt;
 #endif&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
struct MaterialTechniqueSet &lt;br /&gt;
{&lt;br /&gt;
	char *name;&lt;br /&gt;
	MaterialWorldVertexFormat worldVertFormat;&lt;br /&gt;
	MaterialTechnique *techniques[MAX_TECHNIQUES];&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Black Ops 2 ==&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
struct MaterialArgumentCodeConst &lt;br /&gt;
{&lt;br /&gt;
  unsigned __int16 index;&lt;br /&gt;
  char firstRow;&lt;br /&gt;
  char rowCount;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
union MaterialArgumentDef &lt;br /&gt;
{&lt;br /&gt;
  const float *literalConst;&lt;br /&gt;
  MaterialArgumentCodeConst codeConst;&lt;br /&gt;
  unsigned int codeSampler;&lt;br /&gt;
  unsigned int nameHash;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
/* MaterialShaderArgument-&amp;gt;type */&lt;br /&gt;
#define MTL_ARG_MATERIAL_VERTEX_CONST	0x0&lt;br /&gt;
#define MTL_ARG_LITERAL_VERTEX_CONST	0x1&lt;br /&gt;
#define MTL_ARG_MATERIAL_PIXEL_SAMPLER	0x2&lt;br /&gt;
#define  MTL_ARG_CODE_PRIM_BEGIN	0x3&lt;br /&gt;
#define MTL_ARG_CODE_VERTEX_CONST	0x3&lt;br /&gt;
#define MTL_ARG_CODE_PIXEL_SAMPLER	0x4&lt;br /&gt;
#define MTL_ARG_CODE_PIXEL_CONST	0x5&lt;br /&gt;
#define MTL_ARG_MATERIAL_PIXEL_CONST	0x6&lt;br /&gt;
#define  MTL_ARG_CODE_PRIM_END		0x6&lt;br /&gt;
#define MTL_ARG_LITERAL_PIXEL_CONST	0x7&lt;br /&gt;
#define MLT_ARG_COUNT			0x8&lt;br /&gt;
&lt;br /&gt;
struct MaterialShaderArgument&lt;br /&gt;
{&lt;br /&gt;
  unsigned __int16 type;&lt;br /&gt;
  unsigned __int16 dest;&lt;br /&gt;
  MaterialArgumentDef u;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct MaterialStreamRouting&lt;br /&gt;
{&lt;br /&gt;
  char source;&lt;br /&gt;
  char dest;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct MaterialVertexStreamRouting&lt;br /&gt;
{&lt;br /&gt;
  MaterialStreamRouting data[16];&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct MaterialVertexDeclaration&lt;br /&gt;
{&lt;br /&gt;
  char streamCount;&lt;br /&gt;
  bool hasOptionalSource;&lt;br /&gt;
  MaterialVertexStreamRouting routing;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct GfxVertexShaderLoadDef&lt;br /&gt;
{&lt;br /&gt;
  char *cachedPart;&lt;br /&gt;
  char *physicalPart;&lt;br /&gt;
  unsigned __int16 cachedPartSize;&lt;br /&gt;
  unsigned __int16 physicalPartSize;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct MaterialVertexShaderProgram&lt;br /&gt;
{&lt;br /&gt;
  D3DVertexShader *vs;&lt;br /&gt;
  GfxVertexShaderLoadDef loadDef;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct MaterialVertexShader&lt;br /&gt;
{&lt;br /&gt;
  const char *name;&lt;br /&gt;
  MaterialVertexShaderProgram prog;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct GfxPixelShaderLoadDef&lt;br /&gt;
{&lt;br /&gt;
  char *cachedPart;&lt;br /&gt;
  char *physicalPart;&lt;br /&gt;
  unsigned __int16 cachedPartSize;&lt;br /&gt;
  unsigned __int16 physicalPartSize;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
union MaterialPixelShaderProgram&lt;br /&gt;
{&lt;br /&gt;
  D3DPixelShader *ps;&lt;br /&gt;
  GfxPixelShaderLoadDef loadDef;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct MaterialPixelShader&lt;br /&gt;
{&lt;br /&gt;
  const char *name;&lt;br /&gt;
  MaterialPixelShaderProgram prog;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
#pragma pack(push, 4)&lt;br /&gt;
struct MaterialPass &lt;br /&gt;
{&lt;br /&gt;
  MaterialVertexDeclaration *vertexDecl;&lt;br /&gt;
  MaterialVertexShader *vertexShader;&lt;br /&gt;
  union&lt;br /&gt;
  {&lt;br /&gt;
    MaterialPixelShader *pixelShader;&lt;br /&gt;
    MaterialPixelShader *localPixelShader;&lt;br /&gt;
  };&lt;br /&gt;
  char perPrimArgCount;&lt;br /&gt;
  char perObjArgCount;&lt;br /&gt;
  char stableArgCount;&lt;br /&gt;
  char customSamplerFlags;&lt;br /&gt;
  char precompiledIndex;&lt;br /&gt;
  char materialType;  //It is unknown wether this is used/exists on Xbox or PS3.&lt;br /&gt;
  union&lt;br /&gt;
  {&lt;br /&gt;
    MaterialShaderArgument *args;&lt;br /&gt;
    MaterialShaderArgument *localArgs;&lt;br /&gt;
  };&lt;br /&gt;
};&lt;br /&gt;
#pragma pack(pop)&lt;br /&gt;
&lt;br /&gt;
struct MaterialTechnique&lt;br /&gt;
{&lt;br /&gt;
  const char *name;&lt;br /&gt;
  unsigned __int16 flags;&lt;br /&gt;
  unsigned __int16 passCount;&lt;br /&gt;
  MaterialPass passArray;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
/* MaterialTechniqueSet-&amp;gt;worldVertFormat */&lt;br /&gt;
enum MaterialWorldVertexFormat : char&lt;br /&gt;
{&lt;br /&gt;
  MTL_WORLDVERT_TEX_1_NRM_1 = 0x0,&lt;br /&gt;
  MTL_WORLDVERT_TEX_2_NRM_1 = 0x1,&lt;br /&gt;
  MTL_WORLDVERT_TEX_2_NRM_2 = 0x2,&lt;br /&gt;
  MTL_WORLDVERT_TEX_3_NRM_1 = 0x3,&lt;br /&gt;
  MTL_WORLDVERT_TEX_3_NRM_2 = 0x4,&lt;br /&gt;
  MTL_WORLDVERT_TEX_3_NRM_3 = 0x5,&lt;br /&gt;
  MTL_WORLDVERT_TEX_4_NRM_1 = 0x6,&lt;br /&gt;
  MTL_WORLDVERT_TEX_4_NRM_2 = 0x7,&lt;br /&gt;
  MTL_WORLDVERT_TEX_4_NRM_3 = 0x8,&lt;br /&gt;
  MTL_WORLDVERT_TEX_5_NRM_1 = 0x9,&lt;br /&gt;
  MTL_WORLDVERT_TEX_5_NRM_2 = 0xA,&lt;br /&gt;
  MTL_WORLDVERT_TEX_5_NRM_3 = 0xB,&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
#ifdef PS3&lt;br /&gt;
  #define MAX_TECHNIQUES 32&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
#ifdef XBOX&lt;br /&gt;
  #define MAX_TECHNIQUES 36&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
#ifdef PC&lt;br /&gt;
 #define MAX_TECHNIQUES 36&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
struct MaterialTechniqueSet &lt;br /&gt;
{&lt;br /&gt;
  const char *name;&lt;br /&gt;
  MaterialWorldVertexFormat worldVertFormat;&lt;br /&gt;
  MaterialTechnique *techniques[MAX_TECHNIQUES];&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Therifboy</name></author>
	</entry>
	<entry>
		<id>https://codresearch.dev/index.php?title=COM_Map_Asset&amp;diff=814</id>
		<title>COM Map Asset</title>
		<link rel="alternate" type="text/html" href="https://codresearch.dev/index.php?title=COM_Map_Asset&amp;diff=814"/>
		<updated>2015-01-12T14:47:48Z</updated>

		<summary type="html">&lt;p&gt;Therifboy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
[[Category:Assets]]&lt;br /&gt;
[[Category:CoD4]]&lt;br /&gt;
[[Category:WaW]]&lt;br /&gt;
[[Category:MW2]]&lt;br /&gt;
[[Category:BO1]]&lt;br /&gt;
[[Category:MW3]]&lt;br /&gt;
[[Category:BO2]]&lt;br /&gt;
[[Category:Ghosts]]&lt;br /&gt;
The com_map (believed to be &amp;quot;common map&amp;quot;) appears to be dedicated to holding light data for the primary lights around the map. This asset is part of the D3DBSP system produced by Radiant so it has existed on every Call of Duty game so far.&lt;br /&gt;
== Call of Duty 4 &amp;amp; Modern Warfare 2 &amp;amp; 3 &amp;amp; Ghosts ==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
struct ComPrimaryLight&lt;br /&gt;
{&lt;br /&gt;
  char type;&lt;br /&gt;
  char canUseShadowMap;&lt;br /&gt;
  char exponent;&lt;br /&gt;
  char unused;&lt;br /&gt;
  float color[3];&lt;br /&gt;
  float dir[3];&lt;br /&gt;
#if defined(MW3) || defined(Ghosts)&lt;br /&gt;
  float up[3];&lt;br /&gt;
#endif&lt;br /&gt;
  float origin[3];&lt;br /&gt;
  float radius;&lt;br /&gt;
  float cosHalfFovOuter;&lt;br /&gt;
  float cosHalfFovInner;&lt;br /&gt;
  float cosHalfFovExpanded;&lt;br /&gt;
  float rotationLimit;&lt;br /&gt;
  float translationLimit;&lt;br /&gt;
#if defined(MW3) || defined(Ghosts)&lt;br /&gt;
  float cucRotationOffsetRad;&lt;br /&gt;
  float cucRotationSpeedRad;&lt;br /&gt;
  float cucScrollVector[2];&lt;br /&gt;
  float cucScaleVector[2];&lt;br /&gt;
  float cucTransVector[2];&lt;br /&gt;
#endif&lt;br /&gt;
  const char *defName;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct ComWorld&lt;br /&gt;
{&lt;br /&gt;
  const char *name;&lt;br /&gt;
  int isInUse;&lt;br /&gt;
  unsigned int primaryLightCount;&lt;br /&gt;
  ComPrimaryLight *primaryLights;&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== World at War &amp;amp; Black Ops 1 ==&lt;br /&gt;
Note that &amp;quot;waterCells&amp;quot; and &amp;quot;burnableCells&amp;quot; were added in World at War and most likely left over in Black Ops 1, as they were subsequently removed in Black Ops 2. Also there is 0x10 unknown bytes before each cell entry, believed to be cell information.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
struct ComPrimaryLight&lt;br /&gt;
{&lt;br /&gt;
#ifdef BO1&lt;br /&gt;
  char type;&lt;br /&gt;
  char canUseShadowMap;&lt;br /&gt;
  char exponent;&lt;br /&gt;
  char priority;&lt;br /&gt;
  __int16 cullDist;&lt;br /&gt;
  char _pad[2];&lt;br /&gt;
  float color[3];&lt;br /&gt;
  float dir[3];&lt;br /&gt;
  float origin[3];&lt;br /&gt;
  float radius;&lt;br /&gt;
  float cosHalfFovOuter;&lt;br /&gt;
  float cosHalfFovInner;&lt;br /&gt;
  float cosHalfFovExpanded;&lt;br /&gt;
  float rotationLimit;&lt;br /&gt;
  float translationLimit;&lt;br /&gt;
  float mipDistance;&lt;br /&gt;
  float diffuseColor[4];&lt;br /&gt;
  float specularColor[4];&lt;br /&gt;
  float attenuation[4];&lt;br /&gt;
  float falloff[4];&lt;br /&gt;
  float angle[4];&lt;br /&gt;
  float aAbB[4];&lt;br /&gt;
  float cookieControl0[4];&lt;br /&gt;
  float cookieControl1[4];&lt;br /&gt;
  float cookieControl2[4];&lt;br /&gt;
#else&lt;br /&gt;
       char unknown[0x44]; // TODO: WaW contains one more int/float from above&lt;br /&gt;
#endif&lt;br /&gt;
  const char *defName;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct ComWaterHeader&lt;br /&gt;
{&lt;br /&gt;
  int minx;&lt;br /&gt;
  int miny;&lt;br /&gt;
  int maxx;&lt;br /&gt;
  int maxy;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct ComWaterCell&lt;br /&gt;
{&lt;br /&gt;
  __int16 waterheight;&lt;br /&gt;
  char flooroffset;&lt;br /&gt;
  char shoredist;&lt;br /&gt;
  char color[4];&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct ComBurnableHeader&lt;br /&gt;
{&lt;br /&gt;
  int minx;&lt;br /&gt;
  int miny;&lt;br /&gt;
  int maxx;&lt;br /&gt;
  int maxy;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct ComBurnableSample&lt;br /&gt;
{&lt;br /&gt;
  char state;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct ComBurnableCell&lt;br /&gt;
{&lt;br /&gt;
  int x;&lt;br /&gt;
  int y;&lt;br /&gt;
  ComBurnableSample (*data)[0x20];&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct ComWorld&lt;br /&gt;
{&lt;br /&gt;
  const char *name;&lt;br /&gt;
  int isInUse;&lt;br /&gt;
  unsigned int primaryLightCount;&lt;br /&gt;
  ComPrimaryLight *primaryLights;&lt;br /&gt;
  ComWaterHeader waterHeader;&lt;br /&gt;
  unsigned int numWaterCells;&lt;br /&gt;
  ComWaterCell *waterCells; //Size = waterCellCount &amp;lt;&amp;lt; 3&lt;br /&gt;
  ComBurnableHeader burnableHeader;&lt;br /&gt;
  unsigned int numBurnableCells;&lt;br /&gt;
  ComBurnableCell *burnableCells;&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Black Ops 2 ==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
struct ComPrimaryLight&lt;br /&gt;
{&lt;br /&gt;
  char type;&lt;br /&gt;
  char canUseShadowMap;&lt;br /&gt;
  char exponent;&lt;br /&gt;
  char priority;&lt;br /&gt;
  __int16 cullDist;&lt;br /&gt;
  char useCookie;&lt;br /&gt;
  char shadowmapVolume;&lt;br /&gt;
  vec3_t color;&lt;br /&gt;
  vec3_t dir;&lt;br /&gt;
  vec3_t origin;&lt;br /&gt;
  float radius;&lt;br /&gt;
  float cosHalfFovOuter;&lt;br /&gt;
  float cosHalfFovInner;&lt;br /&gt;
  float cosHalfFovExpanded;&lt;br /&gt;
  float rotationLimit;&lt;br /&gt;
  float translationLimit;&lt;br /&gt;
  float mipDistance;&lt;br /&gt;
  float dAttenuation;&lt;br /&gt;
  float roundness;&lt;br /&gt;
  vec4_t diffuseColor;&lt;br /&gt;
  vec4_t falloff;&lt;br /&gt;
  vec4_t angle;&lt;br /&gt;
  vec4_t aAbB;&lt;br /&gt;
  vec4_t cookieControl[3];&lt;br /&gt;
  const char *defName;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct ComWorld&lt;br /&gt;
{&lt;br /&gt;
  const char *name;&lt;br /&gt;
  int isInUse;&lt;br /&gt;
  unsigned int primaryLightCount;&lt;br /&gt;
  ComPrimaryLight *primaryLights;&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>Therifboy</name></author>
	</entry>
	<entry>
		<id>https://codresearch.dev/index.php?title=PhysConstraints_Asset&amp;diff=813</id>
		<title>PhysConstraints Asset</title>
		<link rel="alternate" type="text/html" href="https://codresearch.dev/index.php?title=PhysConstraints_Asset&amp;diff=813"/>
		<updated>2015-01-12T14:46:34Z</updated>

		<summary type="html">&lt;p&gt;Therifboy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
[[Category:Assets]]&lt;br /&gt;
[[Category:WaW]]&lt;br /&gt;
[[Category:BO1]]&lt;br /&gt;
[[Category:BO2]]&lt;br /&gt;
The physconstraints asset holds physical constraint settings for dynamic models. This asset exists only in World at War, Black Ops 1 and Black Ops 2. In World at War the header is 0x988 bytes, however Black Ops 1 and 2 added an extra 0x10 bytes to each physconstraint, making the header size 0xA88.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
enum ConstraintType&lt;br /&gt;
{&lt;br /&gt;
  CONSTRAINT_NONE = 0x0,&lt;br /&gt;
  CONSTRAINT_POINT = 0x1,&lt;br /&gt;
  CONSTRAINT_DISTANCE = 0x2,&lt;br /&gt;
  CONSTRAINT_HINGE = 0x3,&lt;br /&gt;
  CONSTRAINT_JOINT = 0x4,&lt;br /&gt;
  CONSTRAINT_ACTUATOR = 0x5,&lt;br /&gt;
  CONSTRAINT_FAKE_SHAKE = 0x6,&lt;br /&gt;
  CONSTRAINT_LAUNCH = 0x7,&lt;br /&gt;
  CONSTRAINT_ROPE = 0x8,&lt;br /&gt;
#if defined(BO1) || defined(BO2)&lt;br /&gt;
  CONSTRAINT_LIGHT = 0x9,&lt;br /&gt;
#endif&lt;br /&gt;
  NUM_CONSTRAINT_TYPES&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
enum AttachPointType&lt;br /&gt;
{&lt;br /&gt;
  ATTACH_POINT_WORLD = 0x0,&lt;br /&gt;
  ATTACH_POINT_DYNENT = 0x1,&lt;br /&gt;
  ATTACH_POINT_ENT = 0x2,&lt;br /&gt;
  ATTACH_POINT_BONE = 0x3&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct PhysConstraint&lt;br /&gt;
{&lt;br /&gt;
  ScriptString targetname;&lt;br /&gt;
  ConstraintType type;&lt;br /&gt;
  AttachPointType attach_point_type1;&lt;br /&gt;
  int target_index1;&lt;br /&gt;
  ScriptString target_ent1;&lt;br /&gt;
  const char *target_bone1;&lt;br /&gt;
  AttachPointType attach_point_type2;&lt;br /&gt;
  int target_index2;&lt;br /&gt;
  ScriptString target_ent2;&lt;br /&gt;
  const char *target_bone2;&lt;br /&gt;
  vec3_t offset;&lt;br /&gt;
  vec3_t pos;&lt;br /&gt;
  vec3_t pos2;&lt;br /&gt;
  vec3_t dir;&lt;br /&gt;
  int flags;&lt;br /&gt;
  int timeout;&lt;br /&gt;
  int min_health;&lt;br /&gt;
  int max_health;&lt;br /&gt;
  float distance;&lt;br /&gt;
  float damp;&lt;br /&gt;
  float power;&lt;br /&gt;
  vec3_t scale;&lt;br /&gt;
  float spin_scale;&lt;br /&gt;
  float minAngle;&lt;br /&gt;
  float maxAngle;&lt;br /&gt;
  Material *material;&lt;br /&gt;
  int constraintHandle;&lt;br /&gt;
  int rope_index;&lt;br /&gt;
#if defined(BO1) || defined(BO2)&lt;br /&gt;
  int centity_num[4];&lt;br /&gt;
#endif&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct PhysConstraints&lt;br /&gt;
{&lt;br /&gt;
  const char * name;&lt;br /&gt;
  unsigned int count;&lt;br /&gt;
  PhysConstraint data[0x10];&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
== Source Format ==&lt;br /&gt;
The physconstraints source files are raw text files with no extension, located at &amp;quot;raw/physconstraints/&amp;quot;. They use the same format as many other assets, with each setting name and value separated by a back-slash. The first setting identifies the file, and for physconstraints the identifier string is &amp;quot;PHYSCONSTRAINTS&amp;quot;. For example, here is &amp;quot;veh_car_launch_glass_f_mp&amp;quot; from BO1:&lt;br /&gt;
&amp;lt;pre style=&amp;quot;white-space: pre-wrap; &lt;br /&gt;
white-space: -moz-pre-wrap; &lt;br /&gt;
white-space: -pre-wrap; &lt;br /&gt;
white-space: -o-pre-wrap;&lt;br /&gt;
word-wrap: break-word;&amp;quot;&amp;gt;&lt;br /&gt;
PHYSCONSTRAINTS\c1_type\launch\c1_bone1_name\\c1_bone2_name\\c1_timeout\0\c1_offsetX\0\c1_offsetY\0\c1_offsetZ\0\c1_min_health\-10000\c1_max_health\10000\c1_damp\2\c1_power\2\c1_shakescalex\0.5\c1_shakescaley\0.5\c1_shakescalez\1\c1_min_angle\0\c1_max_angle\0\c1_yaw\0\c1_pitch\45\c1_spin_scale\3\c2_type\none\c2_bone1_name\\c2_bone2_name\\c2_timeout\0\c2_offsetX\0\c2_offsetY\0\c2_offsetZ\0\c2_min_health\-10000\c2_max_health\10000\c2_damp\0\c2_power\0\c2_min_angle\0\c2_max_angle\0\c3_type\none\c3_bone1_name\\c3_bone2_name\\c3_timeout\0\c3_offsetX\0\c3_offsetY\0\c3_offsetZ\0\c3_min_health\-10000\c3_max_health\10000\c3_damp\0\c3_power\0\c3_min_angle\0\c3_max_angle\0\c4_type\none\c4_bone1_name\\c4_bone2_name\\c4_timeout\0\c4_offsetX\0\c4_offsetY\0\c4_offsetZ\0\c4_min_health\-10000\c4_max_health\10000\c4_damp\0\c4_power\0\c4_min_angle\0\c4_max_angle\0&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Therifboy</name></author>
	</entry>
	<entry>
		<id>https://codresearch.dev/index.php?title=StructuredDataDef_Asset&amp;diff=812</id>
		<title>StructuredDataDef Asset</title>
		<link rel="alternate" type="text/html" href="https://codresearch.dev/index.php?title=StructuredDataDef_Asset&amp;diff=812"/>
		<updated>2015-01-12T14:45:07Z</updated>

		<summary type="html">&lt;p&gt;Therifboy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
[[Category:Assets]]&lt;br /&gt;
[[Category:MW2]]&lt;br /&gt;
[[Category:MW3]]&lt;br /&gt;
[[Category:Ghosts]]&lt;br /&gt;
[[Category:AW]]&lt;br /&gt;
The structureddatadef asset stores information for data structures and enums used by the game. This asset is only used on Modern Warfare 2, Modern Warfare 3, Ghosts and Advanced Warfare.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
enum StructuredDataTypeCategory&lt;br /&gt;
{&lt;br /&gt;
  DATA_INT = 0x0,&lt;br /&gt;
  DATA_BYTE = 0x1,&lt;br /&gt;
  DATA_BOOL = 0x2,&lt;br /&gt;
  DATA_STRING = 0x3,&lt;br /&gt;
  DATA_ENUM = 0x4,&lt;br /&gt;
  DATA_STRUCT = 0x5,&lt;br /&gt;
  DATA_INDEXED_ARRAY = 0x6,&lt;br /&gt;
  DATA_ENUM_ARRAY = 0x7,&lt;br /&gt;
  DATA_FLOAT = 0x8,&lt;br /&gt;
  DATA_SHORT = 0x9,&lt;br /&gt;
  DATA_COUNT = 0xA,&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
#pragma pack(push,4)&lt;br /&gt;
struct StructuredDataEnumEntry&lt;br /&gt;
{&lt;br /&gt;
#ifdef IW6 // if it is Ghosts..&lt;br /&gt;
  scr_string_t string;&lt;br /&gt;
#else&lt;br /&gt;
  const char *name;&lt;br /&gt;
#endif&lt;br /&gt;
  unsigned __int16 index;&lt;br /&gt;
};&lt;br /&gt;
#pragma pack(pop)&lt;br /&gt;
&lt;br /&gt;
struct StructuredDataEnum&lt;br /&gt;
{&lt;br /&gt;
  int entryCount;&lt;br /&gt;
  int reservedEntryCount;&lt;br /&gt;
  StructuredDataEnumEntry *entries;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
union StructuredDataTypeUnion&lt;br /&gt;
{&lt;br /&gt;
  unsigned int stringDataLength;&lt;br /&gt;
  int enumIndex;&lt;br /&gt;
  int structIndex;&lt;br /&gt;
  int indexedArrayIndex;&lt;br /&gt;
  int enumedArrayIndex;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct StructuredDataType&lt;br /&gt;
{&lt;br /&gt;
  StructuredDataTypeCategory type;&lt;br /&gt;
  StructuredDataTypeUnion u;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
#pragma pack(push,4)&lt;br /&gt;
struct StructuredDataStructProperty&lt;br /&gt;
{&lt;br /&gt;
#if defined(IW6) || defined(S1) // if it is Ghosts or Advanced Warfare..&lt;br /&gt;
  scr_string_t name;&lt;br /&gt;
#else&lt;br /&gt;
  const char *name;&lt;br /&gt;
#endif&lt;br /&gt;
  StructuredDataType item;&lt;br /&gt;
  int offset;&lt;br /&gt;
#ifndef IW4 // if not Modern Warfare 2..&lt;br /&gt;
  StructuredDataValidationType validation;&lt;br /&gt;
#endif&lt;br /&gt;
};&lt;br /&gt;
#pragma pack(pop)&lt;br /&gt;
&lt;br /&gt;
struct StructuredDataStruct&lt;br /&gt;
{&lt;br /&gt;
  int propertyCount;&lt;br /&gt;
  StructuredDataStructProperty *properties;&lt;br /&gt;
  int size;&lt;br /&gt;
  unsigned int bitOffset;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct StructuredDataIndexedArray&lt;br /&gt;
{&lt;br /&gt;
  int arraySize;&lt;br /&gt;
  StructuredDataType elementType;&lt;br /&gt;
  unsigned int elementSize;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct StructuredDataEnumedArray&lt;br /&gt;
{&lt;br /&gt;
  int enumIndex;&lt;br /&gt;
  StructuredDataType elementType;&lt;br /&gt;
  unsigned int elementSize;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct StructuredDataDef&lt;br /&gt;
{&lt;br /&gt;
  int version;&lt;br /&gt;
  unsigned int formatChecksum;&lt;br /&gt;
  int enumCount;&lt;br /&gt;
  StructuredDataEnum *enums;&lt;br /&gt;
  int structCount;&lt;br /&gt;
  StructuredDataStruct *structs;&lt;br /&gt;
  int indexedArrayCount;&lt;br /&gt;
  StructuredDataIndexedArray *indexedArrays;&lt;br /&gt;
  int enumedArrayCount;&lt;br /&gt;
  StructuredDataEnumedArray *enumedArrays;&lt;br /&gt;
  StructuredDataType rootType;&lt;br /&gt;
  unsigned int size;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct StructuredDataDefSet&lt;br /&gt;
{&lt;br /&gt;
  const char *name;&lt;br /&gt;
  unsigned int defCount;&lt;br /&gt;
  StructuredDataDef *defs;&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Notice that on Ghosts and Advanced Warfare all strings were replaced with ScriptStrings, which caused EnumEntry to drop to 4 bytes. &lt;br /&gt;
== Source Format ==&lt;br /&gt;
The official source format is currently unknown, however they still must be dumped for use. The structureddatadefs are defined at &amp;quot;raw/mp/&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
First enums must be dumped. These are very simple with each DefinedEnum an individual enum and EnumEntry (holding the name and enum index value), a value in the enum.&lt;br /&gt;
&lt;br /&gt;
Structures are the second and last item to be dumped. Each DefinedStructure is a structure to be used, and each StructureEntry is an item in the structure. The &amp;quot;index&amp;quot; in the StructureEntryItem for each item is the byte offset of the item in the structure. If the entry item has a &amp;quot;ENUM&amp;quot; or &amp;quot;STRUCT&amp;quot; type then the &amp;quot;data&amp;quot; will be an integer with the index of the enum or struct to use in this StructuredData. If the entry item has a &amp;quot;INDEXEDARR&amp;quot; or &amp;quot;ENUMARR&amp;quot; type then the &amp;quot;data&amp;quot; will be an integer with the index of the &amp;quot;indexedArray&amp;quot; or &amp;quot;enumArray&amp;quot; to use. The array item will then have the type of the element to use. It is possible for an &amp;quot;indexedArray&amp;quot; or &amp;quot;enumArray&amp;quot; to also have a type of &amp;quot;INDEXEDARR&amp;quot; or &amp;quot;ENUMARR&amp;quot; in which case it will be a double array. An &amp;quot;indexedArray&amp;quot; will contain the number of items in the array while the &amp;quot;enumArray&amp;quot; will contain the index for the enum to use for this array. The array will have 1 element for each element in the array, and members will be referenced by their enum value.&lt;/div&gt;</summary>
		<author><name>Therifboy</name></author>
	</entry>
	<entry>
		<id>https://codresearch.dev/index.php?title=FastFiles_and_Zone_files_(MW2)&amp;diff=811</id>
		<title>FastFiles and Zone files (MW2)</title>
		<link rel="alternate" type="text/html" href="https://codresearch.dev/index.php?title=FastFiles_and_Zone_files_(MW2)&amp;diff=811"/>
		<updated>2015-01-12T14:44:04Z</updated>

		<summary type="html">&lt;p&gt;Therifboy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:FastFiles]]&lt;br /&gt;
[[Category:MW2]]&lt;br /&gt;
&lt;br /&gt;
== Main FastFile Structure ==&lt;br /&gt;
 //Note, on PS3 all values are &amp;lt;&amp;lt; 1&lt;br /&gt;
 enum language_t&lt;br /&gt;
 {&lt;br /&gt;
   LANGUAGE_ENGLISH = 0x1,&lt;br /&gt;
   LANGUAGE_FRENCH = 0x2,&lt;br /&gt;
   LANGUAGE_GERMAN = 0x3,&lt;br /&gt;
   LANGUAGE_ITALIAN = 0x4,&lt;br /&gt;
   LANGUAGE_SPANISH = 0x5,&lt;br /&gt;
   LANGUAGE_BRITISH = 0x6,&lt;br /&gt;
   LANGUAGE_RUSSIAN = 0x7,&lt;br /&gt;
   LANGUAGE_POLISH = 0x8,&lt;br /&gt;
   LANGUAGE_KOREAN = 0x9,&lt;br /&gt;
   LANGUAGE_TAIWANESE = 0xA,&lt;br /&gt;
   LANGUAGE_JAPANESE = 0xB,&lt;br /&gt;
   LANGUAGE_CHINESE = 0xC,&lt;br /&gt;
   LANGUAGE_THAI = 0xD,&lt;br /&gt;
   LANGUAGE_LEET = 0xE,&lt;br /&gt;
   LANGUAGE_CZECH = 0xF,&lt;br /&gt;
   MAX_LANGUAGES&lt;br /&gt;
 };&lt;br /&gt;
 &lt;br /&gt;
 //Entry point for the FF.&lt;br /&gt;
 struct DB_AuthHeader&lt;br /&gt;
 {&lt;br /&gt;
   char magic[8];&lt;br /&gt;
   int version;&lt;br /&gt;
   bool allowOnlineUpdate;&lt;br /&gt;
   unsigned __int64 fileCreationTime;&lt;br /&gt;
   language_t region;&lt;br /&gt;
   int entryCount;&lt;br /&gt;
   Entry entries[];&lt;br /&gt;
   int fileSize;&lt;br /&gt;
   int maxFileSize;&lt;br /&gt;
 };&lt;br /&gt;
=== Magic ===&lt;br /&gt;
The magic is a string that is 8 characters long. It is either &amp;quot;IWff0100&amp;quot; or &amp;quot;IWffu100&amp;quot;. It indicates what is read after maxFileSize. If it is &amp;quot;IWff0100&amp;quot; then this FF is signed. If it is &amp;quot;IWffu100&amp;quot;, then this FF is unsigned.&lt;br /&gt;
=== Version ===&lt;br /&gt;
Helps to dictate the version of the FF, so Modern Warfare 3 FastFiles cannot be loaded on Modern Warfare 2. The Modern Warfare 2 version is 0x10D for console systems and 0x114 for PC.&lt;br /&gt;
 if (version &amp;gt; 0x10D)&lt;br /&gt;
  Com_Error(&amp;quot;Fastfile for zone &#039;%s&#039; is newer than client executable (version %d, expecting %d)&amp;quot;, version, 0x10D);&lt;br /&gt;
 else if (version &amp;lt; 0x10D)&lt;br /&gt;
  Com_Error(&amp;quot;Fastfile for zone &#039;%s&#039; is out of date (version %d, expecting %d)&amp;quot;, version, 0x10D);&lt;br /&gt;
=== AllowOnlineUpdate ===&lt;br /&gt;
Whether or not assets in this FF may be replaced by an FF loaded at a later time.&lt;br /&gt;
=== Entries ===&lt;br /&gt;
These are still not entirely understood. Most FF systems simply parse past them.&lt;br /&gt;
==== Xbox 360 ====&lt;br /&gt;
 for (int32 i = 0; i &amp;lt; 0x0f; i++)&lt;br /&gt;
 {&lt;br /&gt;
   if (((1 &amp;lt;&amp;lt; i) &amp;amp; language) == 0)&lt;br /&gt;
     continue;&lt;br /&gt;
   else&lt;br /&gt;
     ReadBytes(((entryCount &amp;lt;&amp;lt; 1) + entryCount) &amp;lt;&amp;lt; 2);&lt;br /&gt;
 }&lt;br /&gt;
==== PS3 ====&lt;br /&gt;
 readBytes(entryCount * 0x14);&lt;br /&gt;
=== File Sizes ===&lt;br /&gt;
The fileSize is the size of the FF, everything included. The maxFileSize is the highest number that fileSize can be, and in most FFs they are equal.&lt;br /&gt;
== Subheader ==&lt;br /&gt;
The rest of the FF is read depending on what the main FF magic was. If the magic was &amp;quot;IWff0100&amp;quot; then the FF is signed. If it was &amp;quot;IWffu100&amp;quot;, the FF is unsigned.&lt;br /&gt;
=== Unsigned Files ===&lt;br /&gt;
PS3 only supports unsigned fastfiles. For Xbox 360, only single player FastFiles are unsigned. Unsigned FastFiles are very simple. The only data remaining is compressed zlib data. Decompressing the data yields the [[#Zone File|zone file]].&lt;br /&gt;
=== Signed Files ===&lt;br /&gt;
 struct DB_AuthHash&lt;br /&gt;
 {&lt;br /&gt;
   char bytes[32];&lt;br /&gt;
 };&lt;br /&gt;
 &lt;br /&gt;
 struct DB_AuthSignatureHash&lt;br /&gt;
 {&lt;br /&gt;
   char bytes[256];&lt;br /&gt;
 };&lt;br /&gt;
 &lt;br /&gt;
 struct DB_AuthSubheader&lt;br /&gt;
 {&lt;br /&gt;
   char fastfileName[32];&lt;br /&gt;
   int reserved;&lt;br /&gt;
   DB_AuthHash masterBlockHashes[244];&lt;br /&gt;
 };&lt;br /&gt;
 &lt;br /&gt;
 struct DB_AuthXBlock&lt;br /&gt;
 {&lt;br /&gt;
 #ifdef XBOX&lt;br /&gt;
   DB_AuthHash blockSignature[0x100];&lt;br /&gt;
   char blockData[0x200000];&lt;br /&gt;
 #elif defined PS3&lt;br /&gt;
   char blockData[0x10000];&lt;br /&gt;
 #endif&lt;br /&gt;
 };&lt;br /&gt;
 &lt;br /&gt;
 //Sub DB_AuthHeader, continuation on the earlier.&lt;br /&gt;
 struct DB_AuthHeader&lt;br /&gt;
 {&lt;br /&gt;
   char magic[8];&lt;br /&gt;
   int reserved;&lt;br /&gt;
   DB_AuthHash subheaderHash;&lt;br /&gt;
   DB_AuthSignatureHash signedSubheaderHash;&lt;br /&gt;
   DB_AuthSubHeader subheader;&lt;br /&gt;
   DB_AuthXBlock xBlocks[];&lt;br /&gt;
 };&lt;br /&gt;
The signatures on the XBlocks are checked as the FastFile loads. Then the sub-header master block hashes are checked, followed by the signedSubheaderHash, and lastly the subheaderHash. If any fail, then the loading of the FF is aborted. Only Activision and the game developers can generate the RSA signatures. &lt;br /&gt;
==== Magic ====&lt;br /&gt;
The subheader magic is always &amp;quot;IWffs100&amp;quot;.&lt;br /&gt;
==== XBlocks ====&lt;br /&gt;
XBlocks are used until they are no longer needed. If the compressed data can fit into 1, then only 1 will exist.&lt;br /&gt;
== Compression ==&lt;br /&gt;
=== PS3 ===&lt;br /&gt;
After the zone file is created, it is split into blocks each 0x10000 bytes. Each block is compressed using default zlib compression. The size of the compressed block is stored as an unsigned 16 bit integer over the zlib header (0x78DA). Compressed blocks are concatenated and appended to the fastfile.&lt;br /&gt;
=== Xbox 360 ===&lt;br /&gt;
Once the zone file is created, the entire zone is compressed using default zlib compression. If the FastFile is unsigned (single player) then the data is simply concatenated to the header. Signed files split the data up into 0x200000 byte XBlocks, each with a 0x2000 byte hash block.&lt;br /&gt;
== Zone File ==&lt;br /&gt;
The zone file is the decompressed data from an FF. &lt;br /&gt;
&lt;br /&gt;
=== Header ===&lt;br /&gt;
The XFile header is loaded first. It contains XBlock sizes to be allocated for g_streamBlocks.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
enum&lt;br /&gt;
{&lt;br /&gt;
 XFILE_BLOCK_TEMP	= 0,&lt;br /&gt;
 XFILE_BLOCK_PHYSICAL	= 1,&lt;br /&gt;
 XFILE_BLOCK_RUNTIME	= 2,&lt;br /&gt;
 XFILE_BLOCK_VIRTUAL	= 3,&lt;br /&gt;
 XFILE_BLOCK_LARGE	= 4,&lt;br /&gt;
 XFILE_BLOCK_CALLBACK	= 5,&lt;br /&gt;
#if defined(PC) || defined(PS3)&lt;br /&gt;
 XFILE_BLOCK_VERTEX	= 6,&lt;br /&gt;
 #ifdef PC&lt;br /&gt;
 XFILE_BLOCK_INDEX	= 7,&lt;br /&gt;
 #endif&lt;br /&gt;
#endif&lt;br /&gt;
 MAX_XFILE_COUNT&lt;br /&gt;
};&lt;br /&gt;
 &lt;br /&gt;
struct XFile&lt;br /&gt;
{&lt;br /&gt;
  int size;&lt;br /&gt;
  int externalSize;&lt;br /&gt;
  int blockSize[MAX_XFILE_COUNT];&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Asset List ===&lt;br /&gt;
After the XFile header is the asset list. The asset list contains a list of script strings and a list of assets. The fastfile compiler creates a rawfile as the last asset which contains any compiler errors (as seen in french code_post_gfx_mp.ff).&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
struct XAsset&lt;br /&gt;
{&lt;br /&gt;
  XAssetType type; //See enum below&lt;br /&gt;
  XAssetHeader * header;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct XAssetList&lt;br /&gt;
{&lt;br /&gt;
  int scriptStringCount;&lt;br /&gt;
  const char * * scriptStrings;&lt;br /&gt;
  int assetCount;&lt;br /&gt;
  XAsset *assets;&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== General [[:Category:Assets|Asset]] Information ==&lt;br /&gt;
=== Asset Types ===&lt;br /&gt;
The types of assets loaded are determined by this enum.&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;1&amp;quot; cellspacing=&amp;quot;1&amp;quot; class=&amp;quot;article-table&amp;quot; style=&amp;quot;font-size:13px;line-height:21px;width:500px;height:500px;&amp;quot;&lt;br /&gt;
! scope=&amp;quot;col&amp;quot;|Asset Type&lt;br /&gt;
! scope=&amp;quot;col&amp;quot;|Xbox ID&lt;br /&gt;
! scope=&amp;quot;col&amp;quot;|PS3 ID&lt;br /&gt;
! scope=&amp;quot;col&amp;quot;|PC ID&lt;br /&gt;
! scope=&amp;quot;col&amp;quot;|Is Used&lt;br /&gt;
! scope=&amp;quot;col&amp;quot;|Max Count&lt;br /&gt;
! scope=&amp;quot;col&amp;quot;|Asset Size (PC)&lt;br /&gt;
|-&lt;br /&gt;
|physpreset&lt;br /&gt;
|0x00&lt;br /&gt;
|0x00&lt;br /&gt;
|0x00&lt;br /&gt;
|True&lt;br /&gt;
|0x40&lt;br /&gt;
|0x2C&lt;br /&gt;
|-&lt;br /&gt;
|phys_collmap&lt;br /&gt;
|0x01&lt;br /&gt;
|0x01&lt;br /&gt;
|0x01&lt;br /&gt;
|True&lt;br /&gt;
|0x400&lt;br /&gt;
|0x48&lt;br /&gt;
|-&lt;br /&gt;
|xanim&lt;br /&gt;
|0x02&lt;br /&gt;
|0x02&lt;br /&gt;
|0x02&lt;br /&gt;
|True&lt;br /&gt;
|0x1000&lt;br /&gt;
|0x58&lt;br /&gt;
|-&lt;br /&gt;
|xmodelsurfs&lt;br /&gt;
|0x03&lt;br /&gt;
|0x03&lt;br /&gt;
|0x03&lt;br /&gt;
|True&lt;br /&gt;
|0x1000&lt;br /&gt;
|0x24&lt;br /&gt;
|-&lt;br /&gt;
|xmodel&lt;br /&gt;
|0x04&lt;br /&gt;
|0x04&lt;br /&gt;
|0x04&lt;br /&gt;
|True&lt;br /&gt;
|0x600&lt;br /&gt;
|0x130&lt;br /&gt;
|-&lt;br /&gt;
|material&lt;br /&gt;
|0x05&lt;br /&gt;
|0x05&lt;br /&gt;
|0x05&lt;br /&gt;
|True&lt;br /&gt;
|0x1000&lt;br /&gt;
|0x60&lt;br /&gt;
|-&lt;br /&gt;
|pixelshader&lt;br /&gt;
|0x06&lt;br /&gt;
|0x06&lt;br /&gt;
|0x06&lt;br /&gt;
|True&lt;br /&gt;
|0x1FA0&lt;br /&gt;
|0x10&lt;br /&gt;
|-&lt;br /&gt;
|vertexshader&lt;br /&gt;
|N/A&lt;br /&gt;
|0x07&lt;br /&gt;
|0x07&lt;br /&gt;
|True&lt;br /&gt;
|0x400&lt;br /&gt;
|0x10&lt;br /&gt;
|-&lt;br /&gt;
|vertexdecl&lt;br /&gt;
|N/A&lt;br /&gt;
|N/A&lt;br /&gt;
|0x08&lt;br /&gt;
|True&lt;br /&gt;
|0x30&lt;br /&gt;
|0x64&lt;br /&gt;
|-&lt;br /&gt;
|techset&lt;br /&gt;
|0x07&lt;br /&gt;
|0x08&lt;br /&gt;
|0x09&lt;br /&gt;
|True&lt;br /&gt;
|0x300&lt;br /&gt;
|0xCC&lt;br /&gt;
|-&lt;br /&gt;
|image&lt;br /&gt;
|0x08&lt;br /&gt;
|0x09&lt;br /&gt;
|0x0A&lt;br /&gt;
|True&lt;br /&gt;
|0xE00&lt;br /&gt;
|0x20&lt;br /&gt;
|-&lt;br /&gt;
|sound&lt;br /&gt;
|0x09&lt;br /&gt;
|0x0A&lt;br /&gt;
|0x0B&lt;br /&gt;
|True&lt;br /&gt;
|0x3E80&lt;br /&gt;
|0x0C&lt;br /&gt;
|-&lt;br /&gt;
|sndcurve&lt;br /&gt;
|0x0A&lt;br /&gt;
|0x0B&lt;br /&gt;
|0x0C&lt;br /&gt;
|True&lt;br /&gt;
|0x40&lt;br /&gt;
|0x88&lt;br /&gt;
|-&lt;br /&gt;
|loaded_sound&lt;br /&gt;
|0x0B&lt;br /&gt;
|0x0C&lt;br /&gt;
|0x0D&lt;br /&gt;
|True&lt;br /&gt;
|0x546&lt;br /&gt;
|0x2C&lt;br /&gt;
|-&lt;br /&gt;
|col_map_sp&lt;br /&gt;
|0x0C&lt;br /&gt;
|0x0D&lt;br /&gt;
|0x0E&lt;br /&gt;
|True&lt;br /&gt;
|1&lt;br /&gt;
|0x100&lt;br /&gt;
|-&lt;br /&gt;
|col_map_mp&lt;br /&gt;
|0x0D&lt;br /&gt;
|0x0E&lt;br /&gt;
|0x0F&lt;br /&gt;
|True&lt;br /&gt;
|1&lt;br /&gt;
|0x100&lt;br /&gt;
|-&lt;br /&gt;
|com_map&lt;br /&gt;
|0x0E&lt;br /&gt;
|0x0F&lt;br /&gt;
|0x10&lt;br /&gt;
|True&lt;br /&gt;
|1&lt;br /&gt;
|0x10&lt;br /&gt;
|-&lt;br /&gt;
|game_map_sp&lt;br /&gt;
|0x0F&lt;br /&gt;
|0x10&lt;br /&gt;
|0x11&lt;br /&gt;
|True&lt;br /&gt;
|1&lt;br /&gt;
|0x38&lt;br /&gt;
|-&lt;br /&gt;
|game_map_mp&lt;br /&gt;
|0x10&lt;br /&gt;
|0x11&lt;br /&gt;
|0x12&lt;br /&gt;
|True&lt;br /&gt;
|1&lt;br /&gt;
|0x08&lt;br /&gt;
|-&lt;br /&gt;
|map_ents&lt;br /&gt;
|0x11&lt;br /&gt;
|0x12&lt;br /&gt;
|0x13&lt;br /&gt;
|True&lt;br /&gt;
|2&lt;br /&gt;
|0x2C&lt;br /&gt;
|-&lt;br /&gt;
|fx_map&lt;br /&gt;
|0x12&lt;br /&gt;
|0x13&lt;br /&gt;
|0x14&lt;br /&gt;
|True&lt;br /&gt;
|1&lt;br /&gt;
|0x74&lt;br /&gt;
|-&lt;br /&gt;
|gfx_map&lt;br /&gt;
|0x13&lt;br /&gt;
|0x14&lt;br /&gt;
|0x15&lt;br /&gt;
|True&lt;br /&gt;
|1&lt;br /&gt;
|0x274&lt;br /&gt;
|-&lt;br /&gt;
|lightdef&lt;br /&gt;
|0x14&lt;br /&gt;
|0x15&lt;br /&gt;
|0x16&lt;br /&gt;
|True&lt;br /&gt;
|0x20&lt;br /&gt;
|0x10&lt;br /&gt;
|-&lt;br /&gt;
|ui_map&lt;br /&gt;
|0x15&lt;br /&gt;
|0x16&lt;br /&gt;
|0x17&lt;br /&gt;
|False&lt;br /&gt;
|0&lt;br /&gt;
|N/A&lt;br /&gt;
|-&lt;br /&gt;
|font&lt;br /&gt;
|0x16&lt;br /&gt;
|0x17&lt;br /&gt;
|0x18&lt;br /&gt;
|True&lt;br /&gt;
|0x10&lt;br /&gt;
|0x18&lt;br /&gt;
|-&lt;br /&gt;
|menufile&lt;br /&gt;
|0x17&lt;br /&gt;
|0x18&lt;br /&gt;
|0x19&lt;br /&gt;
|True&lt;br /&gt;
|0x80&lt;br /&gt;
|0x0C&lt;br /&gt;
|-&lt;br /&gt;
|menu&lt;br /&gt;
|0x18&lt;br /&gt;
|0x19&lt;br /&gt;
|0x1A&lt;br /&gt;
|True&lt;br /&gt;
|0x264&lt;br /&gt;
|0x190&lt;br /&gt;
|-&lt;br /&gt;
|localize&lt;br /&gt;
|0x19&lt;br /&gt;
|0x1A&lt;br /&gt;
|0x1B&lt;br /&gt;
|True&lt;br /&gt;
|0x1B58&lt;br /&gt;
|0x08&lt;br /&gt;
|-&lt;br /&gt;
|weapon&lt;br /&gt;
|0x1A&lt;br /&gt;
|0x1B&lt;br /&gt;
|0x1C&lt;br /&gt;
|True&lt;br /&gt;
|0x578&lt;br /&gt;
|0x684&lt;br /&gt;
|-&lt;br /&gt;
|snddriverglobals&lt;br /&gt;
|0x1B&lt;br /&gt;
|0x1C&lt;br /&gt;
|0x1D&lt;br /&gt;
|True&lt;br /&gt;
|1&lt;br /&gt;
|N/A&lt;br /&gt;
|-&lt;br /&gt;
|fx&lt;br /&gt;
|0x1C&lt;br /&gt;
|0x1D&lt;br /&gt;
|0x1E&lt;br /&gt;
|True&lt;br /&gt;
|0x258&lt;br /&gt;
|0x20&lt;br /&gt;
|-&lt;br /&gt;
|impactfx&lt;br /&gt;
|0x1D&lt;br /&gt;
|0x1E&lt;br /&gt;
|0x1F&lt;br /&gt;
|True&lt;br /&gt;
|4&lt;br /&gt;
|0x08&lt;br /&gt;
|-&lt;br /&gt;
|aitype&lt;br /&gt;
|0x1E&lt;br /&gt;
|0x1F&lt;br /&gt;
|0x20&lt;br /&gt;
|False&lt;br /&gt;
|0&lt;br /&gt;
|N/A&lt;br /&gt;
|-&lt;br /&gt;
|mptype&lt;br /&gt;
|0x1F&lt;br /&gt;
|0x20&lt;br /&gt;
|0x21&lt;br /&gt;
|False&lt;br /&gt;
|0&lt;br /&gt;
|N/A&lt;br /&gt;
|-&lt;br /&gt;
|character&lt;br /&gt;
|0x20&lt;br /&gt;
|0x21&lt;br /&gt;
|0x22&lt;br /&gt;
|False&lt;br /&gt;
|0&lt;br /&gt;
|N/A&lt;br /&gt;
|-&lt;br /&gt;
|xmodelalias&lt;br /&gt;
|0x21&lt;br /&gt;
|0x22&lt;br /&gt;
|0x23&lt;br /&gt;
|False&lt;br /&gt;
|0&lt;br /&gt;
|N/A&lt;br /&gt;
|-&lt;br /&gt;
|rawfile&lt;br /&gt;
|0x22&lt;br /&gt;
|0x23&lt;br /&gt;
|0x24&lt;br /&gt;
|True&lt;br /&gt;
|0x400&lt;br /&gt;
|0x10&lt;br /&gt;
|-&lt;br /&gt;
|stringtable&lt;br /&gt;
|0x23&lt;br /&gt;
|0x24&lt;br /&gt;
|0x25&lt;br /&gt;
|True&lt;br /&gt;
|0x190&lt;br /&gt;
|0x10&lt;br /&gt;
|-&lt;br /&gt;
|leaderboarddef&lt;br /&gt;
|0x24&lt;br /&gt;
|0x25&lt;br /&gt;
|0x26&lt;br /&gt;
|True&lt;br /&gt;
|0x64&lt;br /&gt;
|0x18&lt;br /&gt;
|-&lt;br /&gt;
|structureddatadef&lt;br /&gt;
|0x25&lt;br /&gt;
|0x26&lt;br /&gt;
|0x27&lt;br /&gt;
|True&lt;br /&gt;
|0x18&lt;br /&gt;
|0x0C&lt;br /&gt;
|-&lt;br /&gt;
|tracer&lt;br /&gt;
|0x26&lt;br /&gt;
|0x27&lt;br /&gt;
|0x28&lt;br /&gt;
|True&lt;br /&gt;
|0x20&lt;br /&gt;
|0x70&lt;br /&gt;
|-&lt;br /&gt;
|vehicle&lt;br /&gt;
|0x27&lt;br /&gt;
|0x28&lt;br /&gt;
|0x29&lt;br /&gt;
|True&lt;br /&gt;
|0x80&lt;br /&gt;
|0x2D0&lt;br /&gt;
|-&lt;br /&gt;
|addon_map_ents&lt;br /&gt;
|0x28&lt;br /&gt;
|0x29&lt;br /&gt;
|0x2A&lt;br /&gt;
|True&lt;br /&gt;
|1&lt;br /&gt;
|0x24&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Therifboy</name></author>
	</entry>
	<entry>
		<id>https://codresearch.dev/index.php?title=Menu_Asset_(BO2)&amp;diff=810</id>
		<title>Menu Asset (BO2)</title>
		<link rel="alternate" type="text/html" href="https://codresearch.dev/index.php?title=Menu_Asset_(BO2)&amp;diff=810"/>
		<updated>2015-01-12T14:37:35Z</updated>

		<summary type="html">&lt;p&gt;Therifboy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Assets]]&lt;br /&gt;
[[Category:BO2]]&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
enum expDataType&lt;br /&gt;
{&lt;br /&gt;
  VAL_INT = 0x0,&lt;br /&gt;
  VAL_FLOAT = 0x1,&lt;br /&gt;
  VAL_STRING = 0x2,&lt;br /&gt;
  VAL_ADDRESS = 0x3,&lt;br /&gt;
  VAL_DVAR = 0x4,&lt;br /&gt;
};&lt;br /&gt;
union operandInternalDataUnion&lt;br /&gt;
{&lt;br /&gt;
  int intVal;&lt;br /&gt;
  float floatVal;&lt;br /&gt;
  const char *string;&lt;br /&gt;
  dvar_t *dvar;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct Operand&lt;br /&gt;
{&lt;br /&gt;
  expDataType dataType;&lt;br /&gt;
  operandInternalDataUnion internals;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
enum expOperationEnum&lt;br /&gt;
{&lt;br /&gt;
  OP_NOOP = 0x0,&lt;br /&gt;
  OP_RIGHTPAREN = 0x1,&lt;br /&gt;
  OP_MULTIPLY = 0x2,&lt;br /&gt;
  OP_DIVIDE = 0x3,&lt;br /&gt;
  OP_MODULUS = 0x4,&lt;br /&gt;
  OP_ADD = 0x5,&lt;br /&gt;
  OP_SUBTRACT = 0x6,&lt;br /&gt;
  OP_NEGATE = 0x7,&lt;br /&gt;
  OP_NOT = 0x8,&lt;br /&gt;
  OP_LESSTHAN = 0x9,&lt;br /&gt;
  OP_LESSTHANEQUALTO = 0xA,&lt;br /&gt;
  OP_GREATERTHAN = 0xB,&lt;br /&gt;
  OP_GREATERTHANEQUALTO = 0xC,&lt;br /&gt;
  OP_EQUALS = 0xD,&lt;br /&gt;
  OP_NOTEQUAL = 0xE,&lt;br /&gt;
  OP_AND = 0xF,&lt;br /&gt;
  OP_OR = 0x10,&lt;br /&gt;
  OP_LEFTPAREN = 0x11,&lt;br /&gt;
  OP_COMMA = 0x12,&lt;br /&gt;
  OP_BITWISEAND = 0x13,&lt;br /&gt;
  OP_BITWISEOR = 0x14,&lt;br /&gt;
  OP_BITWISENOT = 0x15,&lt;br /&gt;
  OP_BITSHIFTLEFT = 0x16,&lt;br /&gt;
  OP_BITSHIFTRIGHT = 0x17,&lt;br /&gt;
  NUM_EXPRESSION_OPERATORS = 0x18,&lt;br /&gt;
  MAX_OPERATOR_VALUE = 0x4000,&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
union expressionRpnDataUnion&lt;br /&gt;
{&lt;br /&gt;
  Operand constant;&lt;br /&gt;
  void *cmd;&lt;br /&gt;
  int cmdIdx;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
enum expressionRpnEnum&lt;br /&gt;
{&lt;br /&gt;
  RPN_CONSTANT = 0x0,&lt;br /&gt;
  RPN_CMD_IDX = 0x1,&lt;br /&gt;
  RPN_CMD = 0x2,&lt;br /&gt;
  RPN_END = 0x3,&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct expressionRpn&lt;br /&gt;
{&lt;br /&gt;
  expressionRpnEnum type;&lt;br /&gt;
  expressionRpnDataUnion data;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct ExpressionStatement&lt;br /&gt;
{&lt;br /&gt;
  char *filename;&lt;br /&gt;
  int line;&lt;br /&gt;
  int numRpn;&lt;br /&gt;
  expressionRpn *rpn;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct ScriptCondition&lt;br /&gt;
{&lt;br /&gt;
  bool fireOnTrue;&lt;br /&gt;
  int constructID;&lt;br /&gt;
  int blockID;&lt;br /&gt;
  ScriptCondition *next;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct GenericEventScript&lt;br /&gt;
{&lt;br /&gt;
  ScriptCondition *prerequisites;&lt;br /&gt;
  ExpressionStatement condition;&lt;br /&gt;
  int type;&lt;br /&gt;
  bool fireOnTrue;&lt;br /&gt;
  const char *action;&lt;br /&gt;
  int blockID;&lt;br /&gt;
  int constructID;&lt;br /&gt;
  GenericEventScript *next;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct ItemKeyHandler&lt;br /&gt;
{&lt;br /&gt;
  int key;&lt;br /&gt;
  GenericEventScript *keyScript;&lt;br /&gt;
  ItemKeyHandler *next;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct textExp_s&lt;br /&gt;
{&lt;br /&gt;
  ExpressionStatement textExp;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct columnInfo_s&lt;br /&gt;
{&lt;br /&gt;
  int elementStyle;&lt;br /&gt;
  int maxChars;&lt;br /&gt;
  rectDef_s rect;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct MenuCell&lt;br /&gt;
{&lt;br /&gt;
  int type;&lt;br /&gt;
  int maxChars;&lt;br /&gt;
  char *stringValue;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct MenuRow&lt;br /&gt;
{&lt;br /&gt;
  MenuCell *cells;&lt;br /&gt;
  char *eventName;&lt;br /&gt;
  char *onFocusEventName;&lt;br /&gt;
  bool disableArg;&lt;br /&gt;
  int status;&lt;br /&gt;
  int name;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct listBoxDef_s&lt;br /&gt;
{&lt;br /&gt;
  int mousePos;&lt;br /&gt;
#ifdef _XBOX || defined(PS3) || defined(WII_U)			//Note: PC only has 1 cursor, but consoles can have 4 controllers connected&lt;br /&gt;
  int cursorPos[4];&lt;br /&gt;
  int startPos[4];&lt;br /&gt;
  int endPos[4];&lt;br /&gt;
#elif defined(PC)&lt;br /&gt;
  int cursorPos[1];&lt;br /&gt;
  int startPos[1];&lt;br /&gt;
  int endPos[1];&lt;br /&gt;
#endif&lt;br /&gt;
  int drawPadding;&lt;br /&gt;
  float elementWidth;&lt;br /&gt;
  float elementHeight;&lt;br /&gt;
  int numColumns;&lt;br /&gt;
  float special;&lt;br /&gt;
  columnInfo_s columnInfo[16];&lt;br /&gt;
  int notselectable;&lt;br /&gt;
  int noScrollBars;&lt;br /&gt;
  int usePaging;&lt;br /&gt;
  vec4_t selectBorder;&lt;br /&gt;
  vec4_t disableColor;&lt;br /&gt;
  vec4_t focusColor;&lt;br /&gt;
  vec4_t elementHighlightColor;&lt;br /&gt;
  vec4_t elementBackgroundColor;&lt;br /&gt;
  Material *selectIcon;&lt;br /&gt;
  Material *backgroundItemListbox;&lt;br /&gt;
  Material *highlightTexture;&lt;br /&gt;
  int noBlinkingHighlight;&lt;br /&gt;
  MenuRow *rows;&lt;br /&gt;
  int maxRows;&lt;br /&gt;
  int rowCount;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct multiDef_s&lt;br /&gt;
{&lt;br /&gt;
  const char *dvarList[32];&lt;br /&gt;
  const char *dvarStr[32];&lt;br /&gt;
  float dvarValue[32];&lt;br /&gt;
  int count;&lt;br /&gt;
  int actionOnEnterPressOnly;&lt;br /&gt;
  int strDef;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct profileMultiDef_s&lt;br /&gt;
{&lt;br /&gt;
  const char *profileVarList[32];&lt;br /&gt;
  const char *profileVarStr[32];&lt;br /&gt;
  float profileVarValue[32];&lt;br /&gt;
  int count;&lt;br /&gt;
  int actionOnEnterPressOnly;&lt;br /&gt;
  int strDef;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct editFieldDef_s&lt;br /&gt;
{&lt;br /&gt;
  int cursorPos[1];&lt;br /&gt;
  float minVal;&lt;br /&gt;
  float maxVal;&lt;br /&gt;
  float defVal;&lt;br /&gt;
  float range;&lt;br /&gt;
  int maxChars;&lt;br /&gt;
  int maxCharsGotoNext;&lt;br /&gt;
  int maxPaintChars;&lt;br /&gt;
  int paintOffset;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct enumDvarDef_s&lt;br /&gt;
{&lt;br /&gt;
  const char *enumDvarName;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
union focusDefData_t&lt;br /&gt;
{&lt;br /&gt;
  listBoxDef_s *listBox;&lt;br /&gt;
  multiDef_s *multi;&lt;br /&gt;
  profileMultiDef_s *profileMulti;&lt;br /&gt;
  editFieldDef_s *editField;&lt;br /&gt;
  enumDvarDef_s *enumDvar;&lt;br /&gt;
  void *data;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct focusItemDef_s&lt;br /&gt;
{&lt;br /&gt;
  const char *mouseEnterText;&lt;br /&gt;
  const char *mouseExitText;&lt;br /&gt;
  const char *mouseEnter;&lt;br /&gt;
  const char *mouseExit;&lt;br /&gt;
  ItemKeyHandler *onKey;&lt;br /&gt;
  focusDefData_t focusTypeData;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct gameMsgDef_s&lt;br /&gt;
{&lt;br /&gt;
  int gameMsgWindowIndex;&lt;br /&gt;
  int gameMsgWindowMode;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
union textDefData_t&lt;br /&gt;
{&lt;br /&gt;
  focusItemDef_s *focusItemDef;	// 3,4,5,7,8,9,10,11,12,13,14,16,20,21,22,30&lt;br /&gt;
  gameMsgDef_s *gameMsgDef;	// 15&lt;br /&gt;
  void *data;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct textDef_s&lt;br /&gt;
{&lt;br /&gt;
#ifdef _XBOX || defined(PS3) || defined(WII_U)			//Note: PC only has 1 cursor, but consoles can have 4 controllers connected&lt;br /&gt;
  rectDef_s textRect[4];&lt;br /&gt;
#elif defined(PC)&lt;br /&gt;
  rectDef_s textRect[1];&lt;br /&gt;
#endif&lt;br /&gt;
  int alignment;&lt;br /&gt;
  int fontEnum;&lt;br /&gt;
  int itemFlags;&lt;br /&gt;
  int textAlignMode;&lt;br /&gt;
  float textalignx;&lt;br /&gt;
  float textaligny;&lt;br /&gt;
  float textscale;&lt;br /&gt;
  float textpadding;&lt;br /&gt;
  int textStyle;&lt;br /&gt;
  vec4_t fontColor;&lt;br /&gt;
  vec4_t glowColor;&lt;br /&gt;
  vec4_t shadowColor;&lt;br /&gt;
  float fontBlur;&lt;br /&gt;
  float glowSize;&lt;br /&gt;
  float shadowSize;&lt;br /&gt;
  vec2_t shadowOffset;&lt;br /&gt;
  const char *text;&lt;br /&gt;
  textExp_s *textExpData;&lt;br /&gt;
  textDefData_t textTypeData;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct imageDef_s&lt;br /&gt;
{&lt;br /&gt;
  ExpressionStatement materialExp;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct ownerDrawDef_s&lt;br /&gt;
{&lt;br /&gt;
  ExpressionStatement dataExp;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
union itemData_t&lt;br /&gt;
{&lt;br /&gt;
  textDef_s *textDef;	// 1,3,4,5,7,8,9,10,11,12,13,14,15,16,18,20,22&lt;br /&gt;
  imageDef_s *imageDef;		// 2&lt;br /&gt;
  ownerDrawDef_s *ownerDrawDef;	// 6&lt;br /&gt;
  focusItemDef_s *blankButtonDef;		// 19, 21&lt;br /&gt;
  void *data;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
/* dynamicFlags */&lt;br /&gt;
#define WINDOWDYNAMIC_VISIBLE		0x00000004&lt;br /&gt;
#define WINDOWDYNAMIC_CHECKMASK	0x000FFFFF&lt;br /&gt;
&lt;br /&gt;
/* staticFlags */&lt;br /&gt;
#define WINDOWSTATIC_DECORATION		0x00100000&lt;br /&gt;
#define WINDOWSTATIC_HORIZONTALSCROLL		0x00200000&lt;br /&gt;
#define WINDOWSTATIC_AUTOWRAPPED		0x00800000&lt;br /&gt;
#define WINDOWSTATIC_POPUP 			0x01000000&lt;br /&gt;
#define WINDOWSTATIC_OUTOFBOUNDSCLICK 		0x02000000&lt;br /&gt;
#define WINDOWSTATIC_LEGACYSPLITSCREENSCALE	0x04000000&lt;br /&gt;
#define WINDOWSTATIC_ALLOWSIGNIN		0x08000000&lt;br /&gt;
#define WINDOWSTATIC_HIDDENDURINGFLASHBANG	0x10000000&lt;br /&gt;
#define WINDOWSTATIC_HIDDENDURINGSCOPE		0x20000000&lt;br /&gt;
#define WINDOWSTATIC_HIDDENDURINGUI		0x40000000&lt;br /&gt;
#define WINDOWSTATIC_CHECKMASK			0xFFF00000&lt;br /&gt;
&lt;br /&gt;
struct rectDef_s&lt;br /&gt;
{&lt;br /&gt;
  float x;&lt;br /&gt;
  float y;&lt;br /&gt;
  float w;&lt;br /&gt;
  float h;&lt;br /&gt;
  int horzAlign;&lt;br /&gt;
  int vertAlign;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct windowDef_t&lt;br /&gt;
{&lt;br /&gt;
  const char *name;&lt;br /&gt;
  rectDef_s rect;&lt;br /&gt;
  rectDef_s rectClient;&lt;br /&gt;
  const char *group;&lt;br /&gt;
  char style;&lt;br /&gt;
  char border;&lt;br /&gt;
  char modal;&lt;br /&gt;
  char frameSides;&lt;br /&gt;
  float frameTexSize;&lt;br /&gt;
  float frameSize;&lt;br /&gt;
  int ownerDraw;&lt;br /&gt;
  int ownerDrawFlags;&lt;br /&gt;
  float borderSize;&lt;br /&gt;
  int staticFlags;&lt;br /&gt;
  int dynamicFlags[1];&lt;br /&gt;
  int nextTime;&lt;br /&gt;
  vec4_t foreColor;&lt;br /&gt;
  vec4_t backColor;&lt;br /&gt;
  vec4_t borderColor;&lt;br /&gt;
  vec4_t outlineColor;&lt;br /&gt;
  float rotation;&lt;br /&gt;
  Material *background;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct animParamsDef_t&lt;br /&gt;
{&lt;br /&gt;
  const char *name;&lt;br /&gt;
  rectDef_s rectClient;&lt;br /&gt;
  float borderSize;&lt;br /&gt;
  vec4_t foreColor;&lt;br /&gt;
  vec4_t backColor;&lt;br /&gt;
  vec4_t borderColor;&lt;br /&gt;
  vec4_t outlineColor;&lt;br /&gt;
  float textScale;&lt;br /&gt;
  float rotation;&lt;br /&gt;
  GenericEventHandler *onEvent;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct UIAnimInfo&lt;br /&gt;
{&lt;br /&gt;
  int animStateCount;&lt;br /&gt;
  animParamsDef_t **animStates;&lt;br /&gt;
  animParamsDef_t currentAnimState;&lt;br /&gt;
  animParamsDef_t nextAnimState;&lt;br /&gt;
  int animating;&lt;br /&gt;
  int animStartTime;&lt;br /&gt;
  int animDuration;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct itemDef_t&lt;br /&gt;
{&lt;br /&gt;
  windowDef_t window;&lt;br /&gt;
  int type;&lt;br /&gt;
  int dataType;&lt;br /&gt;
  int imageTrack;&lt;br /&gt;
  const char *dvar;&lt;br /&gt;
  const char *profileVar;&lt;br /&gt;
  const char *dvarTest;&lt;br /&gt;
  const char *enableDvar;&lt;br /&gt;
  int dvarFlags;		// 1=enableDvar, 2=disableDvar, 4=showDvar, 8=hideDvar, 16=focusDvar&lt;br /&gt;
  itemDefData_t typeData;&lt;br /&gt;
  menuDef_t *parent;&lt;br /&gt;
  rectData_s *rectExpData;&lt;br /&gt;
  ExpressionStatement visibleExp;&lt;br /&gt;
  unsigned __int64 showBits;&lt;br /&gt;
  unsigned __int64 hideBits;&lt;br /&gt;
  ExpressionStatement forecolorAExp;&lt;br /&gt;
  int ui3dWindowId;&lt;br /&gt;
  GenericEventHandler *onEvent;&lt;br /&gt;
  UIAnimInfo *animInfo;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct menuDef_t&lt;br /&gt;
{&lt;br /&gt;
  windowDef_t window;&lt;br /&gt;
  const char *font;&lt;br /&gt;
  int fullScreen;&lt;br /&gt;
  int ui3dWindowId;&lt;br /&gt;
  int itemCount;&lt;br /&gt;
  int fontIndex;&lt;br /&gt;
#ifdef _XBOX || defined(PS3) || defined(WII_U)			//Note: PC only has 1 cursor, but consoles can have 4 controllers connected&lt;br /&gt;
  int cursorItem[4];&lt;br /&gt;
#elif defined(PC)&lt;br /&gt;
  int cursorItem[1];&lt;br /&gt;
#endif&lt;br /&gt;
  int fadeCycle;&lt;br /&gt;
  int priority;&lt;br /&gt;
  float fadeClamp;&lt;br /&gt;
  float fadeAmount;&lt;br /&gt;
  float fadeInAmount;&lt;br /&gt;
  float blurRadius;&lt;br /&gt;
  int openSlideSpeed;&lt;br /&gt;
  int closeSlideSpeed;&lt;br /&gt;
  int openSlideDirection;&lt;br /&gt;
  int closeSlideDirection;&lt;br /&gt;
  rectDef_s initialRectInfo;&lt;br /&gt;
  int openFadingTime;&lt;br /&gt;
  int closeFadingTime;&lt;br /&gt;
  int fadeTimeCounter;&lt;br /&gt;
  int slideTimeCounter;&lt;br /&gt;
  GenericEventHandler *onEvent;&lt;br /&gt;
  ItemKeyHandler *onKey;&lt;br /&gt;
  ExpressionStatement visibleExp;&lt;br /&gt;
  unsigned __int64 showBits;&lt;br /&gt;
  unsigned __int64 hideBits;&lt;br /&gt;
  const char *allowedBinding;&lt;br /&gt;
  const char *soundName;&lt;br /&gt;
  int imageTrack;&lt;br /&gt;
  int control;&lt;br /&gt;
  vec4_t focusColor;&lt;br /&gt;
  vec4_t disableColor;&lt;br /&gt;
  ExpressionStatement rectXExp;&lt;br /&gt;
  ExpressionStatement rectYExp;&lt;br /&gt;
  itemDef_s **items;&lt;br /&gt;
	int unknown5;&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>Therifboy</name></author>
	</entry>
	<entry>
		<id>https://codresearch.dev/index.php?title=Hud_Elements&amp;diff=801</id>
		<title>Hud Elements</title>
		<link rel="alternate" type="text/html" href="https://codresearch.dev/index.php?title=Hud_Elements&amp;diff=801"/>
		<updated>2014-12-30T14:48:36Z</updated>

		<summary type="html">&lt;p&gt;Therifboy: Undo revision 800 by Therifboy (talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Game Structures]]&lt;br /&gt;
[[Category:CoD4]]&lt;br /&gt;
[[Category:WaW]]&lt;br /&gt;
[[Category:MW2]]&lt;br /&gt;
[[Category:BO1]]&lt;br /&gt;
[[Category:MW3]]&lt;br /&gt;
[[Category:BO2]]&lt;br /&gt;
[[Category:Ghosts]]&lt;br /&gt;
== Modern Warfare 1, 2, 3, Ghosts &amp;amp; World at War ==&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
enum he_type_t : int&lt;br /&gt;
{&lt;br /&gt;
	HE_TYPE_FREE = 0x0,&lt;br /&gt;
	HE_TYPE_TEXT = 0x1,&lt;br /&gt;
	HE_TYPE_VALUE = 0x2,&lt;br /&gt;
	HE_TYPE_PLAYERNAME = 0x3,&lt;br /&gt;
	HE_TYPE_MATERIAL = 0x4,&lt;br /&gt;
	HE_TYPE_TIMER_DOWN = 0x5,&lt;br /&gt;
	HE_TYPE_TIMER_UP = 0x6,&lt;br /&gt;
	HE_TYPE_TIMER_STATIC = 0x7,&lt;br /&gt;
	HE_TYPE_TENTHS_TIMER_DOWN = 0x8,&lt;br /&gt;
	HE_TYPE_TENTHS_TIMER_UP = 0x9,&lt;br /&gt;
	HE_TYPE_TENTHS_TIMER_STATIC = 0xA,&lt;br /&gt;
	HE_TYPE_CLOCK_DOWN = 0xB,&lt;br /&gt;
	HE_TYPE_CLOCK_UP = 0xC,&lt;br /&gt;
	HE_TYPE_WAYPOINT = 0xD,&lt;br /&gt;
	HE_TYPE_MAPNAME = 0xE,&lt;br /&gt;
	HE_TYPE_GAMETYPE = 0xF,&lt;br /&gt;
	HE_TYPE_COUNT = 0x10,&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
// hudelem_s-&amp;gt;flags&lt;br /&gt;
#define HUDELEMFLAG_FOREGROUND 0x1&lt;br /&gt;
#define HUDELEMFLAG_HIDEWHENDEAD 0x2&lt;br /&gt;
#define HUDELEMFLAG_HIDEWHENINMENU 0x4&lt;br /&gt;
#ifndef COD4 || WAW // MW2 or later&lt;br /&gt;
 #define HUDELEMFLAG_WAYPOINT_PINTOEDGE 0x8&lt;br /&gt;
 #define HUDELEMFLAG_WAYPOINT_FADEATEDGE 0x10&lt;br /&gt;
 #define HUDELEMFLAG_WAYPOINT_ROTATEATEDGE 0x20&lt;br /&gt;
 #define HUDELEMFLAG_WAYPOINT_OFFSCREENONLY 0x40&lt;br /&gt;
 #define HUDELEMFLAG_LOWRES_BACKGROUND 0x100&lt;br /&gt;
 #ifndef MW2 // MW3 or later&lt;br /&gt;
  #define HUDELEM_FLAG_IS_CONSTANTSIZE 0x200&lt;br /&gt;
  #define HUDELEM_FLAG_DRAW_3D 0x400&lt;br /&gt;
  #define HUDELEMFLAG_HIDEWHENIN3RDPERSON 0x800&lt;br /&gt;
  #define HUDELEMFLAG_HIDEWHENINDEMO 0x1000&lt;br /&gt;
  #ifdef GHOSTS // Ghosts&lt;br /&gt;
   #define HUDELEMFLAG_ENTITY_LINKED 0x2000&lt;br /&gt;
   #define HUDELEMFLAG_HUDLIGHTING 0x4000&lt;br /&gt;
  #endif&lt;br /&gt;
 #endif&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
union hudelem_color_t&lt;br /&gt;
{&lt;br /&gt;
	struct&lt;br /&gt;
	{&lt;br /&gt;
		char r;&lt;br /&gt;
		char g;&lt;br /&gt;
		char b;&lt;br /&gt;
		char a;&lt;br /&gt;
	};&lt;br /&gt;
	int rgba;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct hudelem_s&lt;br /&gt;
{&lt;br /&gt;
	he_type_t type;&lt;br /&gt;
	float x;&lt;br /&gt;
	float y;&lt;br /&gt;
	float z;&lt;br /&gt;
	int targetEntNum;&lt;br /&gt;
	float fontScale;&lt;br /&gt;
	float fromFontScale;&lt;br /&gt;
#ifndef COD4 || WAW&lt;br /&gt;
	float fontScaleStartTime;&lt;br /&gt;
	float fontScaleTime;&lt;br /&gt;
#endif&lt;br /&gt;
	int font;&lt;br /&gt;
	int alignOrg;&lt;br /&gt;
	int alignScreen;&lt;br /&gt;
	hudelem_color_t color;&lt;br /&gt;
	hudelem_color_t fromColor;&lt;br /&gt;
	int fadeStartTime;&lt;br /&gt;
	int fadeTime;&lt;br /&gt;
	int label;&lt;br /&gt;
	int width;&lt;br /&gt;
	int height;&lt;br /&gt;
	int materialIndex;&lt;br /&gt;
#ifdef WAW || COD4&lt;br /&gt;
	int offscreenMaterialIdx;&lt;br /&gt;
#endif&lt;br /&gt;
	int fromWidth;&lt;br /&gt;
	int fromHeight;&lt;br /&gt;
	int scaleStartTime;&lt;br /&gt;
	int scaleTime;&lt;br /&gt;
	float fromX;&lt;br /&gt;
	float fromY;&lt;br /&gt;
	int fromAlignOrg;&lt;br /&gt;
	int fromAlignScreen;&lt;br /&gt;
	int moveStartTime;&lt;br /&gt;
	int moveTime;&lt;br /&gt;
	int time;&lt;br /&gt;
	int duration;&lt;br /&gt;
	float value;&lt;br /&gt;
	int text;&lt;br /&gt;
	float sort;&lt;br /&gt;
	hudelem_color_t glowColor;&lt;br /&gt;
	int fxBirthTime;&lt;br /&gt;
	int fxLetterTime;&lt;br /&gt;
	int fxDecayStartTime;&lt;br /&gt;
	int fxDecayDuration;&lt;br /&gt;
	int soundID;&lt;br /&gt;
	int flags;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct game_hudelem_s&lt;br /&gt;
{&lt;br /&gt;
	hudelem_s hud;&lt;br /&gt;
	int clientNum;&lt;br /&gt;
	int team;&lt;br /&gt;
	int archived;&lt;br /&gt;
#ifdef GHOSTS&lt;br /&gt;
	int currentShowInKillcam;&lt;br /&gt;
#endif&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Advanced Warfare ==&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
enum he_type_t : int&lt;br /&gt;
{&lt;br /&gt;
	HE_TYPE_FREE = 0x0,&lt;br /&gt;
	HE_TYPE_TEXT = 0x1,&lt;br /&gt;
	HE_TYPE_VALUE = 0x2,&lt;br /&gt;
	HE_TYPE_PLAYERNAME = 0x3,&lt;br /&gt;
	HE_TYPE_MATERIAL = 0x4,&lt;br /&gt;
	HE_TYPE_TIMER_DOWN = 0x5,&lt;br /&gt;
	HE_TYPE_TIMER_UP = 0x6,&lt;br /&gt;
	HE_TYPE_TIMER_STATIC = 0x7,&lt;br /&gt;
	HE_TYPE_TENTHS_TIMER_DOWN = 0x8,&lt;br /&gt;
	HE_TYPE_TENTHS_TIMER_UP = 0x9,&lt;br /&gt;
	HE_TYPE_TENTHS_TIMER_STATIC = 0xA,&lt;br /&gt;
	HE_TYPE_CLOCK_DOWN = 0xB,&lt;br /&gt;
	HE_TYPE_CLOCK_UP = 0xC,&lt;br /&gt;
	HE_TYPE_WAYPOINT = 0xD,&lt;br /&gt;
	HE_TYPE_MAPNAME = 0xE,&lt;br /&gt;
	HE_TYPE_GAMETYPE = 0xF,&lt;br /&gt;
	HE_TYPE_COUNT = 0x10,&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
// hudelem_s-&amp;gt;flags&lt;br /&gt;
#define HUDELEMFLAG_FOREGROUND		0x1&lt;br /&gt;
#define HUDELEMFLAG_HIDEWHENDEAD	0x2&lt;br /&gt;
#define HUDELEMFLAG_HIDEWHENINMENU	0x4&lt;br /&gt;
#define HUDELEMFLAG_WAYPOINT_PINTOEDGE	0x8&lt;br /&gt;
#define HUDELEMFLAG_WAYPOINT_FADEATEDGE	0x10&lt;br /&gt;
#define HUDELEMFLAG_WAYPOINT_ROTATEATEDGE	0x20&lt;br /&gt;
#define HUDELEMFLAG_WAYPOINT_OFFSCREENONLY	0x40&lt;br /&gt;
#define HUDELEMFLAG_LOWRES_BACKGROUND	0x100&lt;br /&gt;
#define HUDELEMFLAG_IS_CONSTANTSIZE	0x200&lt;br /&gt;
#define HUDELEMFLAG_DRAW_3D		0x400&lt;br /&gt;
#define HUDELEMFLAG_HIDEWHENIN3RDPERSON	0x800&lt;br /&gt;
#define HUDELEMFLAG_HIDEWHENINDEMO	0x1000&lt;br /&gt;
#define HUDELEMFLAG_POSITIONINWORLD	0x4000&lt;br /&gt;
#define HUDELEMFLAG_ENABLEHUDLIGHTING	0x10000&lt;br /&gt;
&lt;br /&gt;
union hudelem_color_t&lt;br /&gt;
{&lt;br /&gt;
	struct&lt;br /&gt;
	{&lt;br /&gt;
		char r;&lt;br /&gt;
		char g;&lt;br /&gt;
		char b;&lt;br /&gt;
		char a;&lt;br /&gt;
	};&lt;br /&gt;
	int rgba;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct hudelem_s&lt;br /&gt;
{&lt;br /&gt;
	int unknown1;		// 0x0&lt;br /&gt;
	int font;		// 0x4&lt;br /&gt;
	int alignOrg;		// 0x8&lt;br /&gt;
	int alignScreen;	// 0xC&lt;br /&gt;
	float x;		// 0x10&lt;br /&gt;
	float y;		// 0x14&lt;br /&gt;
	float z;		// 0x18&lt;br /&gt;
	he_type_t type;		// 0x1C&lt;br /&gt;
	float fontScale;	// 0x20&lt;br /&gt;
	float fromFontScale;	// 0x24&lt;br /&gt;
	float fontScaleStartTime;// 0x28&lt;br /&gt;
	float fontScaleTime;	// 0x2C&lt;br /&gt;
	hudelem_color_t color;	// 0x30&lt;br /&gt;
	hudelem_color_t fromColor;// 0x34&lt;br /&gt;
	int fadeStartTime;	// 0x38&lt;br /&gt;
	int fadeTime;		// 0x3C&lt;br /&gt;
	int label;		// 0x40&lt;br /&gt;
	int width;		// 0x44&lt;br /&gt;
	int height;		// 0x48&lt;br /&gt;
	int materialIndex;	// 0x4C&lt;br /&gt;
	int fromWidth;		// 0x50&lt;br /&gt;
	int fromHeight;		// 0x54&lt;br /&gt;
	int scaleStartTime;	// 0x58&lt;br /&gt;
	int scaleTime;		// 0x5C&lt;br /&gt;
	float fromX;		// 0x60&lt;br /&gt;
	float fromY;		// 0x64&lt;br /&gt;
	int fromAlignOrg;	// 0x68&lt;br /&gt;
	int fromAlignScreen;	// 0x6C&lt;br /&gt;
	int moveStartTime;	// 0x70&lt;br /&gt;
	int moveTime;		// 0x74&lt;br /&gt;
	int time;		// 0x78&lt;br /&gt;
	int duration;		// 0x7C&lt;br /&gt;
	float value;		// 0x80&lt;br /&gt;
	int text;		// 0x84&lt;br /&gt;
	float sort;		// 0x88&lt;br /&gt;
	hudelem_color_t glowColor;// 0x8C&lt;br /&gt;
	int fxBirthTime;	// 0x90&lt;br /&gt;
	int fxLetterTime;	// 0x94&lt;br /&gt;
	int fxDecayStartTime;	// 0x98&lt;br /&gt;
	int fxDecayDuration;	// 0x9C&lt;br /&gt;
	int soundID;		// 0xA0&lt;br /&gt;
	int unknown2;		// 0xA4&lt;br /&gt;
	int flags;		// 0xA8&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct game_hudelem_s&lt;br /&gt;
{&lt;br /&gt;
	hudelem_s hud;		// 0x0&lt;br /&gt;
	int clientNum;		// 0xAC&lt;br /&gt;
	int team;		// 0xB0&lt;br /&gt;
	int archived;		// 0xB4&lt;br /&gt;
	int currentShowInKillcam;	// 0xB8&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
== Black Ops 1 &amp;amp; 2 ==&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
union hudelem_color_t&lt;br /&gt;
{&lt;br /&gt;
	struct&lt;br /&gt;
	{&lt;br /&gt;
		char r;&lt;br /&gt;
		char g;&lt;br /&gt;
		char b;&lt;br /&gt;
		char a;&lt;br /&gt;
	};&lt;br /&gt;
	int rgba;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
enum he_type_t : char&lt;br /&gt;
{&lt;br /&gt;
	HE_TYPE_FREE = 0x0,&lt;br /&gt;
	HE_TYPE_TEXT = 0x1,&lt;br /&gt;
	HE_TYPE_VALUE = 0x2,&lt;br /&gt;
	HE_TYPE_PLAYERNAME = 0x3,&lt;br /&gt;
	HE_TYPE_MAPNAME = 0x4,&lt;br /&gt;
	HE_TYPE_GAMETYPE = 0x5,&lt;br /&gt;
	HE_TYPE_MATERIAL = 0x6,&lt;br /&gt;
	HE_TYPE_TIMER_DOWN = 0x7,&lt;br /&gt;
	HE_TYPE_TIMER_UP = 0x8,&lt;br /&gt;
	HE_TYPE_TENTHS_TIMER_DOWN = 0x9,&lt;br /&gt;
	HE_TYPE_TENTHS_TIMER_UP = 0xA,&lt;br /&gt;
	HE_TYPE_CLOCK_DOWN = 0xB,&lt;br /&gt;
	HE_TYPE_CLOCK_UP = 0xC,&lt;br /&gt;
	HE_TYPE_WAYPOINT = 0xD,&lt;br /&gt;
	HE_TYPE_COUNT = 0xE,&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
// hudelem_s-&amp;gt;flags&lt;br /&gt;
#define HUDELEMFLAG_FOREGROUND 0x1&lt;br /&gt;
#define HUDELEMFLAG_HIDEWHENDEAD 0x2&lt;br /&gt;
#define HUDELEMFLAG_HIDEWHENINMENU 0x4&lt;br /&gt;
#define HUDELEMFLAG_FONTSTYLE3D_SHADOWED 0x8&lt;br /&gt;
#define HUDELEMFLAG_FONTSTYLE3D_SHADOWEDMORE 0x10&lt;br /&gt;
#define HUDELEMFLAG_FONT3DUSEGLOWCOLOR 0x20&lt;br /&gt;
#define HUDELEMFLAG_HIDEWHENINKILLCAM 0x40&lt;br /&gt;
#define HUDELEMFLAG_FADEWHENTARGETED 0x100&lt;br /&gt;
#define HUDELEMFLAG_HIDEWHENINDEMO 0x200&lt;br /&gt;
#define HUDELEMFLAG_OVERRIDEWHENINDEMO 0x400&lt;br /&gt;
#define HUDELEMFLAG_HIDEWHILEREMOTECONTROLLING 0x800&lt;br /&gt;
#ifdef BO2&lt;br /&gt;
#define HUDELEMFLAG_IMMUNETODEMOGAMEHUDSETTING 0x8000&lt;br /&gt;
#define HUDELEMFLAG_IMMUNETODEMOFREECAMERA 0x10000&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
#pragma pack(push, 4)&lt;br /&gt;
struct hudelem_s&lt;br /&gt;
{&lt;br /&gt;
	float x;&lt;br /&gt;
	float y;&lt;br /&gt;
	float z;&lt;br /&gt;
	float fontScale;&lt;br /&gt;
#ifdef BO2&lt;br /&gt;
	float fromFontScale;&lt;br /&gt;
	int fontScaleStartTime;&lt;br /&gt;
#endif&lt;br /&gt;
	hudelem_color_t color;&lt;br /&gt;
	hudelem_color_t fromColor;&lt;br /&gt;
	int fadeStartTime;&lt;br /&gt;
	int scaleStartTime;&lt;br /&gt;
	float fromX;&lt;br /&gt;
	float fromY;&lt;br /&gt;
	int moveStartTime;&lt;br /&gt;
	int time;&lt;br /&gt;
	int duration;&lt;br /&gt;
	float value;&lt;br /&gt;
	float sort;&lt;br /&gt;
	hudelem_color_t glowColor;&lt;br /&gt;
	int fxBirthTime;&lt;br /&gt;
#ifdef BO2&lt;br /&gt;
	unsigned int flags;&lt;br /&gt;
#endif&lt;br /&gt;
	short targetEntNum;&lt;br /&gt;
	short fontscaleTime;&lt;br /&gt;
	short fadeTime;&lt;br /&gt;
	short label;&lt;br /&gt;
	short width;&lt;br /&gt;
	short height;&lt;br /&gt;
	short fromWidth;&lt;br /&gt;
	short fromHeight;&lt;br /&gt;
	short scaleTime;&lt;br /&gt;
	short moveTime;&lt;br /&gt;
	short text;&lt;br /&gt;
	unsigned short fxLetterTime;&lt;br /&gt;
	unsigned short fxDecayStartTime;&lt;br /&gt;
	unsigned short fxDecayDuration;&lt;br /&gt;
	unsigned short fxRedactDecayStartTime;&lt;br /&gt;
	unsigned short fxRedactDecayDuration;&lt;br /&gt;
#ifdef BO1&lt;br /&gt;
	short flags;&lt;br /&gt;
#endif&lt;br /&gt;
	he_type_t type;&lt;br /&gt;
	char font;&lt;br /&gt;
	char alignOrg;&lt;br /&gt;
	char alignScreen;&lt;br /&gt;
	char materialIndex;&lt;br /&gt;
	char offscreenMaterialIdx;&lt;br /&gt;
	char fromAlignOrg;&lt;br /&gt;
	char fromAlignScreen;&lt;br /&gt;
	char soundID;&lt;br /&gt;
	bool ui3dWindow;&lt;br /&gt;
};&lt;br /&gt;
#pragma pack(pop)&lt;br /&gt;
&lt;br /&gt;
struct game_hudelem_s&lt;br /&gt;
{&lt;br /&gt;
	hudelem_s elem;&lt;br /&gt;
	int clientNum;&lt;br /&gt;
	int team;&lt;br /&gt;
	int archived;&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Therifboy</name></author>
	</entry>
	<entry>
		<id>https://codresearch.dev/index.php?title=Hud_Elements&amp;diff=800</id>
		<title>Hud Elements</title>
		<link rel="alternate" type="text/html" href="https://codresearch.dev/index.php?title=Hud_Elements&amp;diff=800"/>
		<updated>2014-12-30T14:33:17Z</updated>

		<summary type="html">&lt;p&gt;Therifboy: /* Advanced Warfare */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Game Structures]]&lt;br /&gt;
[[Category:CoD4]]&lt;br /&gt;
[[Category:WaW]]&lt;br /&gt;
[[Category:MW2]]&lt;br /&gt;
[[Category:BO1]]&lt;br /&gt;
[[Category:MW3]]&lt;br /&gt;
[[Category:BO2]]&lt;br /&gt;
[[Category:Ghosts]]&lt;br /&gt;
== Modern Warfare 1, 2, 3, Ghosts &amp;amp; World at War ==&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
enum he_type_t : int&lt;br /&gt;
{&lt;br /&gt;
	HE_TYPE_FREE = 0x0,&lt;br /&gt;
	HE_TYPE_TEXT = 0x1,&lt;br /&gt;
	HE_TYPE_VALUE = 0x2,&lt;br /&gt;
	HE_TYPE_PLAYERNAME = 0x3,&lt;br /&gt;
	HE_TYPE_MATERIAL = 0x4,&lt;br /&gt;
	HE_TYPE_TIMER_DOWN = 0x5,&lt;br /&gt;
	HE_TYPE_TIMER_UP = 0x6,&lt;br /&gt;
	HE_TYPE_TIMER_STATIC = 0x7,&lt;br /&gt;
	HE_TYPE_TENTHS_TIMER_DOWN = 0x8,&lt;br /&gt;
	HE_TYPE_TENTHS_TIMER_UP = 0x9,&lt;br /&gt;
	HE_TYPE_TENTHS_TIMER_STATIC = 0xA,&lt;br /&gt;
	HE_TYPE_CLOCK_DOWN = 0xB,&lt;br /&gt;
	HE_TYPE_CLOCK_UP = 0xC,&lt;br /&gt;
	HE_TYPE_WAYPOINT = 0xD,&lt;br /&gt;
	HE_TYPE_MAPNAME = 0xE,&lt;br /&gt;
	HE_TYPE_GAMETYPE = 0xF,&lt;br /&gt;
	HE_TYPE_COUNT = 0x10,&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
// hudelem_s-&amp;gt;flags&lt;br /&gt;
#define HUDELEMFLAG_FOREGROUND 0x1&lt;br /&gt;
#define HUDELEMFLAG_HIDEWHENDEAD 0x2&lt;br /&gt;
#define HUDELEMFLAG_HIDEWHENINMENU 0x4&lt;br /&gt;
#ifndef COD4 || WAW // MW2 or later&lt;br /&gt;
 #define HUDELEMFLAG_WAYPOINT_PINTOEDGE 0x8&lt;br /&gt;
 #define HUDELEMFLAG_WAYPOINT_FADEATEDGE 0x10&lt;br /&gt;
 #define HUDELEMFLAG_WAYPOINT_ROTATEATEDGE 0x20&lt;br /&gt;
 #define HUDELEMFLAG_WAYPOINT_OFFSCREENONLY 0x40&lt;br /&gt;
 #define HUDELEMFLAG_LOWRES_BACKGROUND 0x100&lt;br /&gt;
 #ifndef MW2 // MW3 or later&lt;br /&gt;
  #define HUDELEM_FLAG_IS_CONSTANTSIZE 0x200&lt;br /&gt;
  #define HUDELEM_FLAG_DRAW_3D 0x400&lt;br /&gt;
  #define HUDELEMFLAG_HIDEWHENIN3RDPERSON 0x800&lt;br /&gt;
  #define HUDELEMFLAG_HIDEWHENINDEMO 0x1000&lt;br /&gt;
  #ifdef GHOSTS // Ghosts&lt;br /&gt;
   #define HUDELEMFLAG_ENTITY_LINKED 0x2000&lt;br /&gt;
   #define HUDELEMFLAG_HUDLIGHTING 0x4000&lt;br /&gt;
  #endif&lt;br /&gt;
 #endif&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
union hudelem_color_t&lt;br /&gt;
{&lt;br /&gt;
	struct&lt;br /&gt;
	{&lt;br /&gt;
		char r;&lt;br /&gt;
		char g;&lt;br /&gt;
		char b;&lt;br /&gt;
		char a;&lt;br /&gt;
	};&lt;br /&gt;
	int rgba;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct hudelem_s&lt;br /&gt;
{&lt;br /&gt;
	he_type_t type;&lt;br /&gt;
	float x;&lt;br /&gt;
	float y;&lt;br /&gt;
	float z;&lt;br /&gt;
	int targetEntNum;&lt;br /&gt;
	float fontScale;&lt;br /&gt;
	float fromFontScale;&lt;br /&gt;
#ifndef COD4 || WAW&lt;br /&gt;
	float fontScaleStartTime;&lt;br /&gt;
	float fontScaleTime;&lt;br /&gt;
#endif&lt;br /&gt;
	int font;&lt;br /&gt;
	int alignOrg;&lt;br /&gt;
	int alignScreen;&lt;br /&gt;
	hudelem_color_t color;&lt;br /&gt;
	hudelem_color_t fromColor;&lt;br /&gt;
	int fadeStartTime;&lt;br /&gt;
	int fadeTime;&lt;br /&gt;
	int label;&lt;br /&gt;
	int width;&lt;br /&gt;
	int height;&lt;br /&gt;
	int materialIndex;&lt;br /&gt;
#ifdef WAW || COD4&lt;br /&gt;
	int offscreenMaterialIdx;&lt;br /&gt;
#endif&lt;br /&gt;
	int fromWidth;&lt;br /&gt;
	int fromHeight;&lt;br /&gt;
	int scaleStartTime;&lt;br /&gt;
	int scaleTime;&lt;br /&gt;
	float fromX;&lt;br /&gt;
	float fromY;&lt;br /&gt;
	int fromAlignOrg;&lt;br /&gt;
	int fromAlignScreen;&lt;br /&gt;
	int moveStartTime;&lt;br /&gt;
	int moveTime;&lt;br /&gt;
	int time;&lt;br /&gt;
	int duration;&lt;br /&gt;
	float value;&lt;br /&gt;
	int text;&lt;br /&gt;
	float sort;&lt;br /&gt;
	hudelem_color_t glowColor;&lt;br /&gt;
	int fxBirthTime;&lt;br /&gt;
	int fxLetterTime;&lt;br /&gt;
	int fxDecayStartTime;&lt;br /&gt;
	int fxDecayDuration;&lt;br /&gt;
	int soundID;&lt;br /&gt;
	int flags;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct game_hudelem_s&lt;br /&gt;
{&lt;br /&gt;
	hudelem_s hud;&lt;br /&gt;
	int clientNum;&lt;br /&gt;
	int team;&lt;br /&gt;
	int archived;&lt;br /&gt;
#ifdef GHOSTS&lt;br /&gt;
	int currentShowInKillcam;&lt;br /&gt;
#endif&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Advanced Warfare ==&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
enum he_type_t : int&lt;br /&gt;
{&lt;br /&gt;
	HE_TYPE_FREE = 0x0,&lt;br /&gt;
	HE_TYPE_TEXT = 0x1,&lt;br /&gt;
	HE_TYPE_VALUE = 0x2,&lt;br /&gt;
	HE_TYPE_PLAYERNAME = 0x3,&lt;br /&gt;
	HE_TYPE_MATERIAL = 0x4,&lt;br /&gt;
	HE_TYPE_TIMER_DOWN = 0x5,&lt;br /&gt;
	HE_TYPE_TIMER_UP = 0x6,&lt;br /&gt;
	HE_TYPE_TIMER_STATIC = 0x7,&lt;br /&gt;
	HE_TYPE_TENTHS_TIMER_DOWN = 0x8,&lt;br /&gt;
	HE_TYPE_TENTHS_TIMER_UP = 0x9,&lt;br /&gt;
	HE_TYPE_TENTHS_TIMER_STATIC = 0xA,&lt;br /&gt;
	HE_TYPE_CLOCK_DOWN = 0xB,&lt;br /&gt;
	HE_TYPE_CLOCK_UP = 0xC,&lt;br /&gt;
	HE_TYPE_WAYPOINT = 0xD,&lt;br /&gt;
	HE_TYPE_MAPNAME = 0xE,&lt;br /&gt;
	HE_TYPE_GAMETYPE = 0xF,&lt;br /&gt;
	HE_TYPE_COUNT = 0x10,&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
// hudelem_s-&amp;gt;flags&lt;br /&gt;
#define HUDELEMFLAG_FOREGROUND		0x1&lt;br /&gt;
#define HUDELEMFLAG_HIDEWHENDEAD	0x2&lt;br /&gt;
#define HUDELEMFLAG_HIDEWHENINMENU	0x4&lt;br /&gt;
#define HUDELEMFLAG_WAYPOINT_PINTOEDGE	0x8&lt;br /&gt;
#define HUDELEMFLAG_WAYPOINT_FADEATEDGE	0x10&lt;br /&gt;
#define HUDELEMFLAG_WAYPOINT_ROTATEATEDGE	0x20&lt;br /&gt;
#define HUDELEMFLAG_WAYPOINT_OFFSCREENONLY	0x40&lt;br /&gt;
#define HUDELEMFLAG_LOWRES_BACKGROUND	0x100&lt;br /&gt;
#define HUDELEMFLAG_IS_CONSTANTSIZE	0x200&lt;br /&gt;
#define HUDELEMFLAG_DRAW_3D		0x400&lt;br /&gt;
#define HUDELEMFLAG_HIDEWHENIN3RDPERSON	0x800&lt;br /&gt;
#define HUDELEMFLAG_HIDEWHENINDEMO	0x1000&lt;br /&gt;
#define HUDELEMFLAG_POSITIONINWORLD	0x4000&lt;br /&gt;
#define HUDELEMFLAG_ENABLEHUDLIGHTING	0x10000&lt;br /&gt;
&lt;br /&gt;
union hudelem_color_t&lt;br /&gt;
{&lt;br /&gt;
	struct&lt;br /&gt;
	{&lt;br /&gt;
		char r;&lt;br /&gt;
		char g;&lt;br /&gt;
		char b;&lt;br /&gt;
		char a;&lt;br /&gt;
	};&lt;br /&gt;
	int rgba;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct hudelem_s&lt;br /&gt;
{&lt;br /&gt;
	int unknown1;		// 0x0&lt;br /&gt;
	int font;		// 0x4&lt;br /&gt;
	int alignOrg;		// 0x8&lt;br /&gt;
	int alignScreen;	// 0xC&lt;br /&gt;
	float x;		// 0x10&lt;br /&gt;
	float y;		// 0x14&lt;br /&gt;
	float z;		// 0x18&lt;br /&gt;
	he_type_t type;		// 0x1C&lt;br /&gt;
	float fontScale;	// 0x20&lt;br /&gt;
	float fromFontScale;	// 0x24&lt;br /&gt;
	float fontScaleStartTime;// 0x28&lt;br /&gt;
	float fontScaleTime;	// 0x2C&lt;br /&gt;
	hudelem_color_t color;	// 0x30&lt;br /&gt;
	hudelem_color_t fromColor;// 0x34&lt;br /&gt;
	int fadeStartTime;	// 0x38&lt;br /&gt;
	int fadeTime;		// 0x3C&lt;br /&gt;
	int label;		// 0x40&lt;br /&gt;
	int width;		// 0x44&lt;br /&gt;
	int height;		// 0x48&lt;br /&gt;
	int materialIndex;	// 0x4C&lt;br /&gt;
	int fromWidth;		// 0x50&lt;br /&gt;
	int fromHeight;		// 0x54&lt;br /&gt;
	int scaleStartTime;	// 0x58&lt;br /&gt;
	int scaleTime;		// 0x5C&lt;br /&gt;
	float fromX;		// 0x60&lt;br /&gt;
	float fromY;		// 0x64&lt;br /&gt;
	int fromAlignOrg;	// 0x68&lt;br /&gt;
	int fromAlignScreen;	// 0x6C&lt;br /&gt;
	int moveStartTime;	// 0x70&lt;br /&gt;
	int moveTime;		// 0x74&lt;br /&gt;
	int time;		// 0x78&lt;br /&gt;
	int duration;		// 0x7C&lt;br /&gt;
	float value;		// 0x80&lt;br /&gt;
	int text;		// 0x84&lt;br /&gt;
	float sort;		// 0x88&lt;br /&gt;
	hudelem_color_t glowColor;// 0x8C&lt;br /&gt;
	int fxBirthTime;	// 0x90&lt;br /&gt;
	int fxLetterTime;	// 0x94&lt;br /&gt;
	int fxDecayStartTime;	// 0x98&lt;br /&gt;
	int fxDecayDuration;	// 0x9C&lt;br /&gt;
	int soundID;		// 0xA0&lt;br /&gt;
	int targetEntNum;	// 0xA4&lt;br /&gt;
	int flags;		// 0xA8&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct game_hudelem_s&lt;br /&gt;
{&lt;br /&gt;
	hudelem_s hud;		// 0x0&lt;br /&gt;
	int clientNum;		// 0xAC&lt;br /&gt;
	int team;		// 0xB0&lt;br /&gt;
	int archived;		// 0xB4&lt;br /&gt;
	int currentShowInKillcam;	// 0xB8&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Black Ops 1 &amp;amp; 2 ==&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
union hudelem_color_t&lt;br /&gt;
{&lt;br /&gt;
	struct&lt;br /&gt;
	{&lt;br /&gt;
		char r;&lt;br /&gt;
		char g;&lt;br /&gt;
		char b;&lt;br /&gt;
		char a;&lt;br /&gt;
	};&lt;br /&gt;
	int rgba;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
enum he_type_t : char&lt;br /&gt;
{&lt;br /&gt;
	HE_TYPE_FREE = 0x0,&lt;br /&gt;
	HE_TYPE_TEXT = 0x1,&lt;br /&gt;
	HE_TYPE_VALUE = 0x2,&lt;br /&gt;
	HE_TYPE_PLAYERNAME = 0x3,&lt;br /&gt;
	HE_TYPE_MAPNAME = 0x4,&lt;br /&gt;
	HE_TYPE_GAMETYPE = 0x5,&lt;br /&gt;
	HE_TYPE_MATERIAL = 0x6,&lt;br /&gt;
	HE_TYPE_TIMER_DOWN = 0x7,&lt;br /&gt;
	HE_TYPE_TIMER_UP = 0x8,&lt;br /&gt;
	HE_TYPE_TENTHS_TIMER_DOWN = 0x9,&lt;br /&gt;
	HE_TYPE_TENTHS_TIMER_UP = 0xA,&lt;br /&gt;
	HE_TYPE_CLOCK_DOWN = 0xB,&lt;br /&gt;
	HE_TYPE_CLOCK_UP = 0xC,&lt;br /&gt;
	HE_TYPE_WAYPOINT = 0xD,&lt;br /&gt;
	HE_TYPE_COUNT = 0xE,&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
// hudelem_s-&amp;gt;flags&lt;br /&gt;
#define HUDELEMFLAG_FOREGROUND 0x1&lt;br /&gt;
#define HUDELEMFLAG_HIDEWHENDEAD 0x2&lt;br /&gt;
#define HUDELEMFLAG_HIDEWHENINMENU 0x4&lt;br /&gt;
#define HUDELEMFLAG_FONTSTYLE3D_SHADOWED 0x8&lt;br /&gt;
#define HUDELEMFLAG_FONTSTYLE3D_SHADOWEDMORE 0x10&lt;br /&gt;
#define HUDELEMFLAG_FONT3DUSEGLOWCOLOR 0x20&lt;br /&gt;
#define HUDELEMFLAG_HIDEWHENINKILLCAM 0x40&lt;br /&gt;
#define HUDELEMFLAG_FADEWHENTARGETED 0x100&lt;br /&gt;
#define HUDELEMFLAG_HIDEWHENINDEMO 0x200&lt;br /&gt;
#define HUDELEMFLAG_OVERRIDEWHENINDEMO 0x400&lt;br /&gt;
#define HUDELEMFLAG_HIDEWHILEREMOTECONTROLLING 0x800&lt;br /&gt;
#ifdef BO2&lt;br /&gt;
#define HUDELEMFLAG_IMMUNETODEMOGAMEHUDSETTING 0x8000&lt;br /&gt;
#define HUDELEMFLAG_IMMUNETODEMOFREECAMERA 0x10000&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
#pragma pack(push, 4)&lt;br /&gt;
struct hudelem_s&lt;br /&gt;
{&lt;br /&gt;
	float x;&lt;br /&gt;
	float y;&lt;br /&gt;
	float z;&lt;br /&gt;
	float fontScale;&lt;br /&gt;
#ifdef BO2&lt;br /&gt;
	float fromFontScale;&lt;br /&gt;
	int fontScaleStartTime;&lt;br /&gt;
#endif&lt;br /&gt;
	hudelem_color_t color;&lt;br /&gt;
	hudelem_color_t fromColor;&lt;br /&gt;
	int fadeStartTime;&lt;br /&gt;
	int scaleStartTime;&lt;br /&gt;
	float fromX;&lt;br /&gt;
	float fromY;&lt;br /&gt;
	int moveStartTime;&lt;br /&gt;
	int time;&lt;br /&gt;
	int duration;&lt;br /&gt;
	float value;&lt;br /&gt;
	float sort;&lt;br /&gt;
	hudelem_color_t glowColor;&lt;br /&gt;
	int fxBirthTime;&lt;br /&gt;
#ifdef BO2&lt;br /&gt;
	unsigned int flags;&lt;br /&gt;
#endif&lt;br /&gt;
	short targetEntNum;&lt;br /&gt;
	short fontscaleTime;&lt;br /&gt;
	short fadeTime;&lt;br /&gt;
	short label;&lt;br /&gt;
	short width;&lt;br /&gt;
	short height;&lt;br /&gt;
	short fromWidth;&lt;br /&gt;
	short fromHeight;&lt;br /&gt;
	short scaleTime;&lt;br /&gt;
	short moveTime;&lt;br /&gt;
	short text;&lt;br /&gt;
	unsigned short fxLetterTime;&lt;br /&gt;
	unsigned short fxDecayStartTime;&lt;br /&gt;
	unsigned short fxDecayDuration;&lt;br /&gt;
	unsigned short fxRedactDecayStartTime;&lt;br /&gt;
	unsigned short fxRedactDecayDuration;&lt;br /&gt;
#ifdef BO1&lt;br /&gt;
	short flags;&lt;br /&gt;
#endif&lt;br /&gt;
	he_type_t type;&lt;br /&gt;
	char font;&lt;br /&gt;
	char alignOrg;&lt;br /&gt;
	char alignScreen;&lt;br /&gt;
	char materialIndex;&lt;br /&gt;
	char offscreenMaterialIdx;&lt;br /&gt;
	char fromAlignOrg;&lt;br /&gt;
	char fromAlignScreen;&lt;br /&gt;
	char soundID;&lt;br /&gt;
	bool ui3dWindow;&lt;br /&gt;
};&lt;br /&gt;
#pragma pack(pop)&lt;br /&gt;
&lt;br /&gt;
struct game_hudelem_s&lt;br /&gt;
{&lt;br /&gt;
	hudelem_s elem;&lt;br /&gt;
	int clientNum;&lt;br /&gt;
	int team;&lt;br /&gt;
	int archived;&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Therifboy</name></author>
	</entry>
	<entry>
		<id>https://codresearch.dev/index.php?title=ScriptFile_Asset&amp;diff=798</id>
		<title>ScriptFile Asset</title>
		<link rel="alternate" type="text/html" href="https://codresearch.dev/index.php?title=ScriptFile_Asset&amp;diff=798"/>
		<updated>2014-12-30T12:24:06Z</updated>

		<summary type="html">&lt;p&gt;Therifboy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
[[Category:Assets]]&lt;br /&gt;
[[Category:MW3]]&lt;br /&gt;
[[Category:Ghosts]]&lt;br /&gt;
The scriptfile asset is used on Modern Warfare 3, Ghosts, and Advanced Warfare. It is Infinity Ward&#039;s attempt at protecting their game scripts from being modified. Compared to Treyarch&#039;s scriptparsetree, the scriptfile gives away less information on identifying which game script file it originated from. All unnecessary strings have been removed and file names have even been renamed as number id&#039;s.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
struct ScriptFile&lt;br /&gt;
{&lt;br /&gt;
  const char *name;&lt;br /&gt;
  int compressedLen;&lt;br /&gt;
  int len;&lt;br /&gt;
  int bytecodeLen;&lt;br /&gt;
  const char *buffer;&lt;br /&gt;
  char *bytecode;&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
=== Buffer ===&lt;br /&gt;
The buffer is a zlib compressed section in which the compressed size is equal to compressedLen and it&#039;s uncompressed size is equal to len.&lt;br /&gt;
&lt;br /&gt;
This section of data is not needed during runtime. Before being executed, the linker runs through the bytecode once and links the buffer and bytecode section together so that all programs can be ran as one. It contains strings and function call info.&lt;br /&gt;
&lt;br /&gt;
In order to be linked correctly, the buffer and bytecode section must be read synchronously (e.g. when reading the OP_GetString opcode, the buffer pointer must be pointing to the string ready to be loaded). The linker does this by incrementing the buffer pointer each time it reads an opcode that uses it.&lt;br /&gt;
&lt;br /&gt;
At the beginning of each function, the linker loads a 32 bit value, which is the length of the function in the program section. Then it loads a 16 bit value which is the function id. If the id is equal to zero, then it will load a string after it, which is the name of the function. After this, the opcodes may begin to use the data section. The opcodes that use the data section are OP_GetAnimTree, OP_GetString, OP_GetIString, OP_GetAnimation, OP_GetFarFunction, OP_EvalLevelFieldVariable, OP_EvalAnimFieldVariable, OP_EvalSelfFieldVariable, OP_EvalFieldVariable, OP_EvalLevelFieldVariableRef, OP_EvalAnimFieldVariableRef, OP_EvalSelfFieldVariableRef, OP_EvalFieldVariableRef, OP_ClearFieldVariable, OP_SetLevelFieldVariableField, OP_SetSelfFieldVariableField, all the far call opcodes, and OP_endswitch.&lt;br /&gt;
&lt;br /&gt;
=== Code Section ===&lt;br /&gt;
The code section is the actual compiled game script code. &lt;br /&gt;
== Operation Codes ==&lt;br /&gt;
=== Modern Warfare 3 ===&lt;br /&gt;
==== XBOX &amp;amp; PS3 ====&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#define OP_End					0&lt;br /&gt;
#define OP_Return				1&lt;br /&gt;
#define OP_GetUndefined			2&lt;br /&gt;
#define OP_GetZero				3&lt;br /&gt;
#define OP_GetByte				4&lt;br /&gt;
#define OP_GetAnimTree				5&lt;br /&gt;
#define OP_GetNegByte			6&lt;br /&gt;
#define OP_GetUnsignedShort		7&lt;br /&gt;
#define OP_GetNegUnsignedShort	8&lt;br /&gt;
#define OP_GetInteger			9&lt;br /&gt;
#define OP_GetBuiltinFunction			0xA&lt;br /&gt;
#define OP_GetBuiltinMethod			0xB&lt;br /&gt;
#define OP_GetFloat				0xC&lt;br /&gt;
#define OP_GetString			0xD&lt;br /&gt;
#define OP_GetIString			0xE&lt;br /&gt;
#define OP_GetVector			0xF&lt;br /&gt;
#define OP_GetLevelObject		0x10&lt;br /&gt;
#define OP_GetAnimObject		0x11&lt;br /&gt;
#define OP_GetSelf				0x12&lt;br /&gt;
#define OP_GetThisthread			0x13&lt;br /&gt;
#define OP_GetLevel				0x14&lt;br /&gt;
#define OP_GetGame				0x15&lt;br /&gt;
#define OP_GetAnim				0x16&lt;br /&gt;
#define OP_GetAnimation			0x17&lt;br /&gt;
#define OP_GetGameRef			0x18&lt;br /&gt;
#define OP_GetLocalFunction			0x19&lt;br /&gt;
#define OP_GetFarFunction			0x1A&lt;br /&gt;
#define OP_CreateLocalVariable	0x1B&lt;br /&gt;
#define OP_RemoveLocalVariables	0x1C&lt;br /&gt;
#define OP_EvalLocalVariableCached0		0x1D&lt;br /&gt;
#define OP_EvalLocalVariableCached1		0x1E&lt;br /&gt;
#define OP_EvalLocalVariableCached2		0x1F&lt;br /&gt;
#define OP_EvalLocalVariableCached3		0x20&lt;br /&gt;
#define OP_EvalLocalVariableCached4		0x21&lt;br /&gt;
#define OP_EvalLocalVariableCached5		0x22&lt;br /&gt;
#define OP_EvalLocalVariableCached		0x23&lt;br /&gt;
#define OP_EvalLocalArrayCached			0x24&lt;br /&gt;
#define OP_EvalArray				0x25&lt;br /&gt;
#define OP_EvalLocalArrayRefCached0		0x26&lt;br /&gt;
#define OP_EvalNewLocalArrayRefCached0       	0x27&lt;br /&gt;
#define OP_EvalLocalArrayRefCached		0x28&lt;br /&gt;
#define OP_EvalArrayRef				0x29&lt;br /&gt;
#define OP_ClearArray				0x2A&lt;br /&gt;
#define OP_EmptyArray				0x2B&lt;br /&gt;
#define OP_AddArray				0x2C&lt;br /&gt;
#define OP_GetSelfObject			0x2D&lt;br /&gt;
#define OP_EvalLevelFieldVariable	0x2E&lt;br /&gt;
#define OP_EvalAnimFieldVariable	0x2F&lt;br /&gt;
#define OP_EvalSelfFieldVariable	0x30&lt;br /&gt;
#define OP_EvalFieldVariable		0x31&lt;br /&gt;
#define OP_EvalLevelFieldVariableRef 	0x32&lt;br /&gt;
#define OP_EvalAnimFieldVariableRef		0x33&lt;br /&gt;
#define OP_EvalSelfFieldVariableRef		0x34&lt;br /&gt;
#define OP_EvalFieldVariableRef			0x35&lt;br /&gt;
#define OP_ClearFieldVariable			0x36&lt;br /&gt;
#define OP_SafeCreateVariableFieldCached	0x37&lt;br /&gt;
#define OP_SafeSetVariableFieldCached0		0x38&lt;br /&gt;
#define OP_SafeSetVariableFieldCached		0x39&lt;br /&gt;
#define OP_SafeSetWaittillVariableFieldCached	0x3A&lt;br /&gt;
#define OP_clearparams				0x3B&lt;br /&gt;
#define OP_checkclearparams			0x3C&lt;br /&gt;
#define OP_EvalLocalVariableRefCached0				0x3D&lt;br /&gt;
#define OP_EvalNewLocalVariableRefCached0			0x3E	// nop&lt;br /&gt;
#define OP_EvalLocalVariableRefCached	0x3F&lt;br /&gt;
#define OP_SetLevelFieldVariableField	0x40&lt;br /&gt;
#define OP_SetVariableField		0x41&lt;br /&gt;
#define OP_ClearVariableField			0x42	// nop&lt;br /&gt;
#define OP_SetAnimFieldVariableField	0x43&lt;br /&gt;
#define OP_SetSelfFieldVariableField	0x44&lt;br /&gt;
#define OP_SetLocalVariableFieldCached0		0x45&lt;br /&gt;
#define OP_SetNewLocalVariableFieldCached0		0x46&lt;br /&gt;
#define OP_SetLocalVariableFieldCached		0x47&lt;br /&gt;
#define OP_ClearLocalVariableFieldCached		0x48&lt;br /&gt;
#define OP_ClearLocalVariableFieldCached0		0x49&lt;br /&gt;
#define OP_CallBuiltin0		0x4A&lt;br /&gt;
#define OP_CallBuiltin1		0x4B&lt;br /&gt;
#define OP_CallBuiltin2		0x4C&lt;br /&gt;
#define OP_CallBuiltin3		0x4D&lt;br /&gt;
#define OP_CallBuiltin4		0x4E&lt;br /&gt;
#define OP_CallBuiltin5		0x4F&lt;br /&gt;
#define OP_CallBuiltin		0x50&lt;br /&gt;
#define OP_CallBuiltinMethod0	0x51&lt;br /&gt;
#define OP_CallBuiltinMethod1	0x52&lt;br /&gt;
#define OP_CallBuiltinMethod2	0x53&lt;br /&gt;
#define OP_CallBuiltinMethod3	0x54&lt;br /&gt;
#define OP_CallBuiltinMethod4	0x55&lt;br /&gt;
#define OP_CallBuiltinMethod5	0x56&lt;br /&gt;
#define OP_CallBuiltinMethod	0x57&lt;br /&gt;
#define OP_wait					0x58&lt;br /&gt;
#define OP_waittillFrameEnd		0x59&lt;br /&gt;
#define OP_PreScriptCall		0x5A&lt;br /&gt;
#define OP_ScriptLocalFunctionCall2	0x5B&lt;br /&gt;
#define OP_ScriptLocalFunctionCall	0x5C&lt;br /&gt;
#define OP_ScriptLocalMethodCall	0x5D&lt;br /&gt;
#define OP_ScriptLocalThreadCall			0x5E&lt;br /&gt;
#define OP_ScriptLocalChildThreadCall	0x5F&lt;br /&gt;
#define OP_ScriptLocalMethodThreadCall			0x60&lt;br /&gt;
#define OP_ScriptLocalMethodChildThreadCall			0x61&lt;br /&gt;
#define OP_ScriptFarFunctionCall2		0x62&lt;br /&gt;
#define OP_ScriptFarFunctionCall		0x63&lt;br /&gt;
#define OP_ScriptFarMethodCall	0x64&lt;br /&gt;
#define OP_ScriptFarThreadCall				0x65&lt;br /&gt;
#define OP_ScriptFarChildThreadCall		0x66&lt;br /&gt;
#define OP_ScriptFarMethodThreadCall			0x67&lt;br /&gt;
#define OP_ScriptFarMethodChildThreadCall			0x68&lt;br /&gt;
#define OP_ScriptFunctionCallPointer			0x69&lt;br /&gt;
#define OP_ScriptMethodCallPointer			0x6A&lt;br /&gt;
#define OP_ScriptThreadCallPointer			0x6B&lt;br /&gt;
#define OP_ScriptMethodChildThreadCallPointer			0x6C&lt;br /&gt;
#define OP_ScriptMethodThreadCallPointer			0x6D&lt;br /&gt;
#define OP_ScriptMethodChildThreadCallPointer			0x6E&lt;br /&gt;
#define OP_CallBuiltinPointer			0x6F&lt;br /&gt;
#define OP_CallBuiltinMethodPointer			0x70&lt;br /&gt;
#define OP_DecTop			0x71&lt;br /&gt;
#define OP_CastFieldObject			0x72&lt;br /&gt;
#define OP_EvalLocalVariableObjectCached			0x73&lt;br /&gt;
#define OP_CastBool			0x74&lt;br /&gt;
#define OP_BoolNot				0x75&lt;br /&gt;
#define OP_BoolComplement		0x76&lt;br /&gt;
#define OP_JumpOnFalse			0x77&lt;br /&gt;
#define OP_JumpOnTrue			0x78&lt;br /&gt;
#define OP_JumpOnFalseExpr		0x79&lt;br /&gt;
#define OP_JumpOnTrueExpr		0x7A&lt;br /&gt;
#define OP_jump				0x7B&lt;br /&gt;
#define OP_jumpback			0x7C&lt;br /&gt;
#define OP_inc				0x7D&lt;br /&gt;
#define OP_dec				0x7E&lt;br /&gt;
#define OP_bit_or			0x7F&lt;br /&gt;
#define OP_bit_ex_or		0x80&lt;br /&gt;
#define OP_bit_and			0x81&lt;br /&gt;
#define OP_equality			0x82&lt;br /&gt;
#define OP_inequality		0x83&lt;br /&gt;
#define OP_less				0x84&lt;br /&gt;
#define OP_greater			0x85&lt;br /&gt;
#define OP_less_equal		0x86&lt;br /&gt;
#define OP_greater_equal	0x87&lt;br /&gt;
#define OP_shift_left		0x88&lt;br /&gt;
#define OP_shift_right		0x89&lt;br /&gt;
#define OP_plus				0x8A&lt;br /&gt;
#define OP_minus			0x8B&lt;br /&gt;
#define OP_multiply			0x8C&lt;br /&gt;
#define OP_divide			0x8F&lt;br /&gt;
#define OP_mod				0x8E&lt;br /&gt;
#define OP_size				0x8F&lt;br /&gt;
#define OP_waittillmatch		0x90&lt;br /&gt;
#define OP_waittillmatch2		0x91 // nop&lt;br /&gt;
#define OP_waittill			0x92&lt;br /&gt;
#define OP_notify			0x93&lt;br /&gt;
#define OP_endon			0x94&lt;br /&gt;
#define OP_voidCodepos		0x95&lt;br /&gt;
#define OP_switch			0x96&lt;br /&gt;
#define OP_endswitch		0x97&lt;br /&gt;
#define OP_vector			0x98&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== PC ====&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#define OP_End	0x0&lt;br /&gt;
#define OP_Return	0x1&lt;br /&gt;
#define OP_GetByte	0x2&lt;br /&gt;
#define OP_GetNegByte	0x3&lt;br /&gt;
#define OP_GetUnsignedShort	0x4&lt;br /&gt;
#define OP_GetNegUnsignedShort	0x5&lt;br /&gt;
#define OP_GetInteger	0x6&lt;br /&gt;
#define OP_GetBuiltinFunction	0x7&lt;br /&gt;
#define OP_GetBuiltinMethod	0x8&lt;br /&gt;
#define OP_GetFloat	0x9&lt;br /&gt;
#define OP_GetString	0xA&lt;br /&gt;
#define OP_GetUndefined	0xB&lt;br /&gt;
#define OP_GetZero	0xC&lt;br /&gt;
#define OP_waittillFrameEnd		0xD&lt;br /&gt;
#define OP_CreateLocalVariable	0xE&lt;br /&gt;
#define OP_RemoveLocalVariables	0xF&lt;br /&gt;
#define OP_EvalLocalVariableCached0	0x10&lt;br /&gt;
#define OP_EvalLocalVariableCached1	0x11&lt;br /&gt;
#define OP_EvalLocalVariableCached2	0x12&lt;br /&gt;
#define OP_EvalLocalVariableCached3	0x13&lt;br /&gt;
#define OP_EvalLocalVariableCached4	0x14&lt;br /&gt;
#define OP_EvalLocalVariableCached5	0x15&lt;br /&gt;
#define OP_EvalLocalVariableCached	0x16&lt;br /&gt;
#define OP_EvalLocalArrayCached	0x17&lt;br /&gt;
#define OP_EvalArray	0x18&lt;br /&gt;
#define OP_EvalNewLocalArrayRefCached0	0x19&lt;br /&gt;
#define OP_EvalLocalArrayRefCached0	0x1A&lt;br /&gt;
#define OP_EvalLocalArrayRefCached	0x1B&lt;br /&gt;
#define OP_EvalArrayRef	0x1C&lt;br /&gt;
#define OP_ClearArray	0x1D&lt;br /&gt;
#define OP_EmptyArray	0x1E&lt;br /&gt;
#define OP_AddArray	0x1F&lt;br /&gt;
#define OP_PreScriptCall	0x20&lt;br /&gt;
#define OP_ScriptLocalFunctionCall2	0x21&lt;br /&gt;
#define OP_ScriptLocalFunctionCall	0x22&lt;br /&gt;
#define OP_ScriptLocalMethodCall	0x23&lt;br /&gt;
#define OP_ScriptLocalThreadCall	0x24&lt;br /&gt;
#define OP_ScriptLocalChildThreadCall	0x25&lt;br /&gt;
#define OP_ScriptLocalMethodThreadCall	0x26&lt;br /&gt;
#define OP_ScriptLocalMethodChildThreadCall	0x27&lt;br /&gt;
#define OP_ScriptFarFunctionCall2	0x28&lt;br /&gt;
#define OP_ScriptFarFunctionCall	0x29&lt;br /&gt;
#define OP_ScriptFarMethodCall	0x2A&lt;br /&gt;
#define OP_ScriptFarThreadCall	0x2B&lt;br /&gt;
#define OP_ScriptFarChildThreadCall	0x2C&lt;br /&gt;
#define OP_ScriptFarMethodThreadCall	0x2D&lt;br /&gt;
#define OP_ScriptFarMethodChildThreadCall	0x2E&lt;br /&gt;
#define OP_ScriptFunctionCallPointer	0x2F&lt;br /&gt;
#define OP_ScriptMethodCallPointer		0x30&lt;br /&gt;
#define OP_ScriptThreadCallPointer		0x31&lt;br /&gt;
#define OP_ScriptMethodChildThreadCallPointer					0x32&lt;br /&gt;
#define OP_ScriptMethodThreadCallPointer	0x33&lt;br /&gt;
#define OP_ScriptMethodChildThreadCallPointer	0x34&lt;br /&gt;
#define OP_CallBuiltinPointer	0x35&lt;br /&gt;
#define OP_CallBuiltinMethodPointer	0x36&lt;br /&gt;
#define OP_GetIString	0x37&lt;br /&gt;
#define OP_GetVector	0x38&lt;br /&gt;
#define OP_GetLevelObject	0x39&lt;br /&gt;
#define OP_GetAnimObject	0x3A&lt;br /&gt;
#define OP_GetSelf	0x3B&lt;br /&gt;
#define OP_GetThisthread	0x3C&lt;br /&gt;
#define OP_GetLevel	0x3D&lt;br /&gt;
#define OP_GetGame	0x3E&lt;br /&gt;
#define OP_GetAnim	0x3F&lt;br /&gt;
#define OP_GetAnimation	0x40&lt;br /&gt;
#define OP_GetGameRef	0x41&lt;br /&gt;
#define OP_inc	0x42&lt;br /&gt;
#define OP_dec	0x43&lt;br /&gt;
#define OP_bit_or	0x44&lt;br /&gt;
#define OP_JumpOnFalseExpr	0x45&lt;br /&gt;
#define OP_bit_ex_or	0x46&lt;br /&gt;
#define OP_bit_and	0x47&lt;br /&gt;
#define OP_equality	0x48&lt;br /&gt;
#define OP_inequality	0x49&lt;br /&gt;
#define OP_less	0x4A&lt;br /&gt;
#define OP_greater	0x4B&lt;br /&gt;
#define OP_JumpOnTrueExpr	0x4C&lt;br /&gt;
#define OP_less_equal	0x4D&lt;br /&gt;
#define OP_jumpback	0x4E&lt;br /&gt;
#define OP_waittillmatch2	0x4F // nop&lt;br /&gt;
#define OP_waittill	0x50&lt;br /&gt;
#define OP_notify	0x51&lt;br /&gt;
#define OP_endon	0x52&lt;br /&gt;
#define OP_voidCodepos	0x53&lt;br /&gt;
#define OP_switch	0x54&lt;br /&gt;
#define OP_endswitch	0x55&lt;br /&gt;
#define OP_vector	0x56&lt;br /&gt;
#define OP_JumpOnFalse	0x57&lt;br /&gt;
#define OP_greater_equal	0x58&lt;br /&gt;
#define OP_shift_left	0x59&lt;br /&gt;
#define OP_shift_right	0x5A&lt;br /&gt;
#define OP_plus	0x5B&lt;br /&gt;
#define OP_jump	0x5C&lt;br /&gt;
#define OP_minus	0x5D&lt;br /&gt;
#define OP_multiply	0x5E&lt;br /&gt;
#define OP_divide	0x5F&lt;br /&gt;
#define OP_mod	0x60&lt;br /&gt;
#define OP_JumpOnTrue	0x61&lt;br /&gt;
#define OP_size	0x62&lt;br /&gt;
#define OP_waittillmatch	0x63&lt;br /&gt;
#define OP_GetLocalFunction	0x64&lt;br /&gt;
#define OP_GetFarFunction	0x65&lt;br /&gt;
#define OP_GetSelfObject	0x66&lt;br /&gt;
#define OP_EvalLevelFieldVariable	0x67&lt;br /&gt;
#define OP_EvalAnimFieldVariable	0x68&lt;br /&gt;
#define OP_EvalSelfFieldVariable	0x69&lt;br /&gt;
#define OP_EvalFieldVariable	0x6A&lt;br /&gt;
#define OP_EvalLevelFieldVariableRef	0x6B&lt;br /&gt;
#define OP_EvalAnimFieldVariableRef	0x6C&lt;br /&gt;
#define OP_EvalSelfFieldVariableRef	0x6D&lt;br /&gt;
#define OP_EvalFieldVariableRef	0x6E&lt;br /&gt;
#define OP_ClearFieldVariable	0x6F&lt;br /&gt;
#define OP_SafeCreateVariableFieldCached	0x70&lt;br /&gt;
#define OP_SafeSetVariableFieldCached0	0x71&lt;br /&gt;
#define OP_SafeSetVariableFieldCached		0x72&lt;br /&gt;
#define OP_SafeSetWaittillVariableFieldCached	0x73&lt;br /&gt;
#define OP_GetAnimTree	0x74&lt;br /&gt;
#define OP_clearparams	0x75&lt;br /&gt;
#define OP_checkclearparams				0x76&lt;br /&gt;
#define OP_EvalLocalVariableRefCached0	0x77&lt;br /&gt;
#define OP_EvalNewLocalVariableRefCached0	0x78 // nop&lt;br /&gt;
#define OP_EvalLocalVariableRefCached	0x79&lt;br /&gt;
#define OP_SetLevelFieldVariableField	0x7A&lt;br /&gt;
#define OP_SetVariableField				0x7B&lt;br /&gt;
#define OP_ClearVariableField		0x7C // nop&lt;br /&gt;
#define OP_SetAnimFieldVariableField	0x7D&lt;br /&gt;
#define OP_SetSelfFieldVariableField	0x7E&lt;br /&gt;
#define OP_SetLocalVariableFieldCached0	0x7F&lt;br /&gt;
#define OP_SetNewLocalVariableFieldCached0		0x80&lt;br /&gt;
#define OP_SetLocalVariableFieldCached	0x81&lt;br /&gt;
#define OP_ClearLocalVariableFieldCached		0x82&lt;br /&gt;
#define OP_ClearLocalVariableFieldCached0		0x83&lt;br /&gt;
#define OP_CallBuiltin0	0x84&lt;br /&gt;
#define OP_CallBuiltin1	0x85&lt;br /&gt;
#define OP_CallBuiltin2	0x86&lt;br /&gt;
#define OP_CallBuiltin3	0x87&lt;br /&gt;
#define OP_CallBuiltin4	0x88&lt;br /&gt;
#define OP_CallBuiltin5	0x89&lt;br /&gt;
#define OP_CallBuiltin	0x8A&lt;br /&gt;
#define OP_CallBuiltinMethod0	0x8B&lt;br /&gt;
#define OP_CallBuiltinMethod1	0x8C&lt;br /&gt;
#define OP_CallBuiltinMethod2	0x8D&lt;br /&gt;
#define OP_CallBuiltinMethod3	0x8E&lt;br /&gt;
#define OP_CallBuiltinMethod4	0x8F&lt;br /&gt;
#define OP_CallBuiltinMethod5	0x90&lt;br /&gt;
#define OP_CallBuiltinMethod	0x91&lt;br /&gt;
#define OP_wait		0x92&lt;br /&gt;
#define OP_DecTop	0x93&lt;br /&gt;
#define OP_CastFieldObject	0x94&lt;br /&gt;
#define OP_EvalLocalVariableObjectCached 0x95&lt;br /&gt;
#define OP_CastBool	0x96&lt;br /&gt;
#define OP_BoolNot	0x97&lt;br /&gt;
#define OP_BoolComplement 0x98&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Ghosts ===&lt;br /&gt;
The opcodes for Ghosts do the exact same thing as the Modern Warfare 3 opcodes, only their values seem to be scrambled in some way.&lt;br /&gt;
==== XBOX &amp;amp; PS3 ====&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#define OP_CastFieldObject			0x1D&lt;br /&gt;
#define OP_SetLocalVariableFieldCached	0x1E&lt;br /&gt;
#define OP_plus				0x1F&lt;br /&gt;
#define OP_RemoveLocalVariables		0x20&lt;br /&gt;
#define OP_EvalSelfFieldVariableRef	0x21&lt;br /&gt;
#define OP_ScriptFarMethodChildThreadCall	0x22&lt;br /&gt;
#define OP_GetGameRef			0x23&lt;br /&gt;
#define OP_EvalAnimFieldVariable	0x24&lt;br /&gt;
#define OP_EvalLevelFieldVariableRef	0x25&lt;br /&gt;
#define OP_GetThisthread		0x26&lt;br /&gt;
#define OP_greater		0x27&lt;br /&gt;
#define OP_waittillmatch	0x28&lt;br /&gt;
#define OP_shift_right		0x29&lt;br /&gt;
#define OP_dec			0x2A&lt;br /&gt;
#define OP_JumpOnTrue	0x2B&lt;br /&gt;
#define OP_bit_or	0x2C&lt;br /&gt;
#define OP_equality	0x2D&lt;br /&gt;
#define OP_ClearLocalVariableFieldCached0	0x2E&lt;br /&gt;
#define OP_notify	0x2F&lt;br /&gt;
#define OP_GetVector	0x30&lt;br /&gt;
#define OP_ScriptMethodChildThreadCallPointer	0x31&lt;br /&gt;
#define OP_voidCodepos	0x32&lt;br /&gt;
#define OP_GetByte	0x33&lt;br /&gt;
#define OP_ScriptFarMethodThreadCall		0x34&lt;br /&gt;
#define OP_SetSelfFieldVariableField	0x35&lt;br /&gt;
#define OP_JumpOnFalseExpr		0x36&lt;br /&gt;
#define OP_GetUndefined		0x37&lt;br /&gt;
#define OP_jumpback		0x38&lt;br /&gt;
#define OP_JumpOnTrueExpr	0x39&lt;br /&gt;
#define OP_CallBuiltin0		0x3A&lt;br /&gt;
#define OP_CallBuiltin1		0x3B&lt;br /&gt;
#define OP_CallBuiltin2		0x3C&lt;br /&gt;
#define OP_CallBuiltin3		0x3D&lt;br /&gt;
#define OP_CallBuiltin4		0x3E&lt;br /&gt;
#define OP_CallBuiltin5		0x3F&lt;br /&gt;
#define OP_CallBuiltin		0x40&lt;br /&gt;
#define OP_SetLocalVariableFieldCached0		0x41&lt;br /&gt;
#define OP_ClearFieldVariable	0x42&lt;br /&gt;
#define OP_GetLevel		0x43&lt;br /&gt;
#define OP_size			0x44&lt;br /&gt;
#define OP_SafeSetWaittillVariableFieldCached	0x45&lt;br /&gt;
#define OP_ScriptLocalThreadCall			0x46&lt;br /&gt;
#define OP_AddArray			0x47&lt;br /&gt;
#define OP_endon			0x48&lt;br /&gt;
#define OP_EvalFieldVariable		0x49&lt;br /&gt;
#define OP_shift_left			0x4A&lt;br /&gt;
#define OP_EvalLocalArrayRefCached0	0x4B&lt;br /&gt;
#define OP_Return			0x4C&lt;br /&gt;
#define OP_CreateLocalVariable		0x4D&lt;br /&gt;
#define OP_SafeSetVariableFieldCached0	0x4E&lt;br /&gt;
#define OP_GetBuiltinFunction		0x4F&lt;br /&gt;
#define OP_ScriptLocalMethodCall	0x50&lt;br /&gt;
#define OP_CallBuiltinMethodPointer			0x51&lt;br /&gt;
#define OP_ScriptLocalChildThreadCall		0x52&lt;br /&gt;
#define OP_GetSelfObject		0x53&lt;br /&gt;
#define OP_GetGame			0x54&lt;br /&gt;
#define OP_SetLevelFieldVariableField	0x55&lt;br /&gt;
#define OP_EvalArray			0x56&lt;br /&gt;
#define OP_GetSelf			0x57&lt;br /&gt;
#define OP_End				0x58&lt;br /&gt;
#define OP_EvalSelfFieldVariable	0x59&lt;br /&gt;
#define OP_less_equal			0x5A&lt;br /&gt;
#define OP_EvalLocalVariableCached0	0x5B&lt;br /&gt;
#define OP_EvalLocalVariableCached1	0x5C&lt;br /&gt;
#define OP_EvalLocalVariableCached2	0x5D&lt;br /&gt;
#define OP_EvalLocalVariableCached3	0x5E&lt;br /&gt;
#define OP_EvalLocalVariableCached4	0x5F&lt;br /&gt;
#define OP_EvalLocalVariableCached5	0x60&lt;br /&gt;
#define OP_EvalLocalVariableCached	0x61&lt;br /&gt;
#define OP_EvalNewLocalArrayRefCached0		0x62&lt;br /&gt;
#define OP_ScriptMethodChildThreadCallPointer		0x63&lt;br /&gt;
#define OP_EvalLocalVariableObjectCached		0x64&lt;br /&gt;
#define OP_ScriptLocalMethodThreadCall	0x65&lt;br /&gt;
#define OP_GetInteger		0x66&lt;br /&gt;
#define OP_ScriptMethodCallPointer		0x67&lt;br /&gt;
#define OP_checkclearparams	0x68&lt;br /&gt;
#define OP_SetAnimFieldVariableField	0x69&lt;br /&gt;
// nop&lt;br /&gt;
#define OP_minus  0x6B&lt;br /&gt;
#define OP_ScriptLocalFunctionCall2 0x6C&lt;br /&gt;
#define OP_GetNegUnsignedShort 0x6D&lt;br /&gt;
#define OP_GetNegByte		0x6E&lt;br /&gt;
#define OP_SafeCreateVariableFieldCached	0x6F&lt;br /&gt;
#define OP_greater_equal	0x70&lt;br /&gt;
#define OP_vector		0x71&lt;br /&gt;
#define OP_GetBuiltinMethod	0x72&lt;br /&gt;
#define OP_endswitch	0x73&lt;br /&gt;
#define OP_ClearArray	0x74&lt;br /&gt;
#define OP_DecTop	0x75&lt;br /&gt;
#define OP_CastBool	0x76&lt;br /&gt;
#define OP_EvalArrayRef	0x77&lt;br /&gt;
#define OP_SetNewLocalVariableFieldCached0		0x78&lt;br /&gt;
#define OP_GetZero			0x79&lt;br /&gt;
#define OP_wait				0x7A&lt;br /&gt;
#define OP_waittill			0x7B&lt;br /&gt;
#define OP_GetIString			0x7C&lt;br /&gt;
#define OP_ScriptFarFunctionCall	0x7D&lt;br /&gt;
#define OP_GetAnimObject		0x7E&lt;br /&gt;
#define OP_GetAnimTree			0x7F&lt;br /&gt;
#define OP_EvalLocalArrayCached		0x80&lt;br /&gt;
#define OP_mod				0x81&lt;br /&gt;
#define OP_ScriptFarThreadCall		0x82&lt;br /&gt;
#define OP_GetUnsignedShort		0x83&lt;br /&gt;
#define OP_clearparams		0x84&lt;br /&gt;
#define OP_ScriptMethodThreadCallPointer		0x85&lt;br /&gt;
#define OP_ScriptFunctionCallPointer		0x86&lt;br /&gt;
#define OP_EmptyArray		0x87&lt;br /&gt;
#define OP_SafeSetVariableFieldCached	0x88&lt;br /&gt;
// nop&lt;br /&gt;
#define OP_EvalFieldVariableRef		0x8A&lt;br /&gt;
#define OP_ScriptLocalMethodChildThreadCall	0x8B&lt;br /&gt;
// nop&lt;br /&gt;
#define OP_GetFloat			0x8D&lt;br /&gt;
#define OP_EvalLocalVariableRefCached	0x8E&lt;br /&gt;
#define OP_JumpOnFalse			0x8F&lt;br /&gt;
#define OP_BoolComplement		0x90&lt;br /&gt;
#define OP_ScriptThreadCallPointer			0x91&lt;br /&gt;
#define OP_ScriptFarFunctionCall2	0x92&lt;br /&gt;
#define OP_less				0x93&lt;br /&gt;
#define OP_BoolNot			0x94&lt;br /&gt;
#define OP_waittillFrameEnd		0x95&lt;br /&gt;
#define OP_GetString			0x96&lt;br /&gt;
#define OP_EvalLevelFieldVariable	0x97&lt;br /&gt;
#define OP_GetLevelObject	0x98&lt;br /&gt;
#define OP_inc			0x99&lt;br /&gt;
#define OP_CallBuiltinMethod0	0x9A&lt;br /&gt;
#define OP_CallBuiltinMethod1	0x9B&lt;br /&gt;
#define OP_CallBuiltinMethod2	0x9C&lt;br /&gt;
#define OP_CallBuiltinMethod3	0x9D&lt;br /&gt;
#define OP_CallBuiltinMethod4	0x9E&lt;br /&gt;
#define OP_CallBuiltinMethod5	0x9F&lt;br /&gt;
#define OP_CallBuiltinMethod	0xA0&lt;br /&gt;
#define OP_GetAnim		0xA1&lt;br /&gt;
#define OP_switch		0xA2&lt;br /&gt;
#define OP_SetVariableField	0xA3&lt;br /&gt;
#define OP_divide		0xA4&lt;br /&gt;
#define OP_GetLocalFunction		0xA5&lt;br /&gt;
#define OP_ScriptFarChildThreadCall	0xA6&lt;br /&gt;
#define OP_multiply			0xA7&lt;br /&gt;
#define OP_ClearLocalVariableFieldCached			0xA8&lt;br /&gt;
#define OP_EvalAnimFieldVariableRef	0xA9&lt;br /&gt;
#define OP_EvalLocalArrayRefCached	0xAA&lt;br /&gt;
#define OP_EvalLocalVariableRefCached0	0xAB&lt;br /&gt;
#define OP_bit_and			0xAC&lt;br /&gt;
#define OP_GetAnimation			0xAD&lt;br /&gt;
#define OP_GetFarFunction			0xAE&lt;br /&gt;
#define OP_CallBuiltinPointer			0xAF&lt;br /&gt;
#define OP_jump				0xB0&lt;br /&gt;
#define OP_PreScriptCall		0xB1&lt;br /&gt;
#define OP_ScriptFarMethodCall	0xB2&lt;br /&gt;
#define OP_inequality		0xB3&lt;br /&gt;
#define OP_ScriptLocalFunctionCall	0xB4&lt;br /&gt;
#define OP_bit_ex_or		0xB5&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
==== PC ====&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#define OP_SetNewLocalVariableFieldCached0		0x17&lt;br /&gt;
#define OP_EvalSelfFieldVariable	0x18&lt;br /&gt;
#define OP_Return					0x19&lt;br /&gt;
#define OP_CallBuiltin0				0x1A&lt;br /&gt;
#define OP_CallBuiltin1				0x1B&lt;br /&gt;
#define OP_CallBuiltin2				0x1C&lt;br /&gt;
#define OP_CallBuiltin3				0x1D&lt;br /&gt;
#define OP_CallBuiltin4				0x1E&lt;br /&gt;
#define OP_CallBuiltin5				0x1F&lt;br /&gt;
#define OP_CallBuiltin				0x20&lt;br /&gt;
#define OP_BoolNot					0x21&lt;br /&gt;
#define OP_ScriptFarMethodThreadCall		0x22&lt;br /&gt;
#define OP_JumpOnTrueExpr					0x23&lt;br /&gt;
#define OP_SetLevelFieldVariableField		0x24&lt;br /&gt;
#define OP_CastBool							0x25&lt;br /&gt;
#define OP_EvalNewLocalArrayRefCached0		0x26&lt;br /&gt;
#define OP_CallBuiltinPointer		0x27&lt;br /&gt;
#define OP_inequality				0x28&lt;br /&gt;
#define OP_GetThisthread			0x29&lt;br /&gt;
#define OP_ClearFieldVariable		0x2A&lt;br /&gt;
#define OP_GetFloat					0x2B&lt;br /&gt;
#define OP_SafeCreateVariableFieldCached	0x2C&lt;br /&gt;
#define OP_ScriptFarFunctionCall2			0x2D&lt;br /&gt;
#define OP_ScriptFarFunctionCall			0x2E&lt;br /&gt;
#define OP_ScriptFarChildThreadCall			0x2F&lt;br /&gt;
#define OP_ClearLocalVariableFieldCached0		0x30&lt;br /&gt;
#define OP_ClearLocalVariableFieldCached		0x31&lt;br /&gt;
#define OP_checkclearparams		0x32&lt;br /&gt;
#define OP_CastFieldObject		0x33&lt;br /&gt;
#define OP_End					0x34&lt;br /&gt;
#define OP_size					0x35&lt;br /&gt;
#define OP_EmptyArray			0x36&lt;br /&gt;
#define OP_bit_and				0x37&lt;br /&gt;
#define OP_less_equal			0x38&lt;br /&gt;
#define OP_voidCodepos			0x39&lt;br /&gt;
#define OP_ScriptMethodThreadCallPointer	0x3A&lt;br /&gt;
#define OP_endswitch						0x3B&lt;br /&gt;
#define OP_ClearVariableField				0x3C&lt;br /&gt;
#define OP_divide							0x3D&lt;br /&gt;
#define OP_ScriptFarMethodChildThreadCall	0x3E&lt;br /&gt;
#define OP_GetUnsignedShort				0x3F&lt;br /&gt;
#define OP_JumpOnTrue					0x40&lt;br /&gt;
#define OP_GetSelf						0x41&lt;br /&gt;
#define OP_ScriptFarThreadCall			0x42&lt;br /&gt;
#define OP_ScriptLocalThreadCall		0x43&lt;br /&gt;
#define OP_SetLocalVariableFieldCached0		0x44&lt;br /&gt;
#define OP_SetLocalVariableFieldCached		0x45&lt;br /&gt;
#define OP_plus							0x46&lt;br /&gt;
#define OP_BoolComplement				0x47&lt;br /&gt;
#define OP_ScriptMethodCallPointer		0x48&lt;br /&gt;
#define OP_inc							0x49&lt;br /&gt;
#define OP_RemoveLocalVariables			0x4A&lt;br /&gt;
#define OP_JumpOnFalseExpr				0x4B&lt;br /&gt;
#define OP_switch						0x4C&lt;br /&gt;
#define OP_clearparams					0x4D&lt;br /&gt;
#define OP_EvalLocalVariableRefCached0		0x4E&lt;br /&gt;
#define OP_EvalLocalVariableRefCached		0x4F&lt;br /&gt;
#define OP_ScriptLocalMethodCall		0x50&lt;br /&gt;
#define OP_EvalFieldVariable		0x51&lt;br /&gt;
#define OP_EvalFieldVariableRef		0x52&lt;br /&gt;
#define OP_GetString				0x53&lt;br /&gt;
#define OP_ScriptFunctionCallPointer	0x54&lt;br /&gt;
#define OP_EvalLevelFieldVariable		0x55&lt;br /&gt;
#define OP_GetVector			0x56&lt;br /&gt;
#define OP_endon				0x57&lt;br /&gt;
#define OP_greater_equal		0x58&lt;br /&gt;
#define OP_GetSelfObject		0x59&lt;br /&gt;
#define OP_SetAnimFieldVariableField	0x5A&lt;br /&gt;
#define OP_SetVariableField				0x5B&lt;br /&gt;
#define OP_ScriptLocalFunctionCall2		0x5C&lt;br /&gt;
#define OP_ScriptLocalFunctionCall		0x5D&lt;br /&gt;
#define OP_EvalLocalArrayRefCached0		0x5E&lt;br /&gt;
#define OP_EvalLocalArrayRefCached		0x5F&lt;br /&gt;
#define OP_GetFarFunction		0x60&lt;br /&gt;
#define OP_less					0x61&lt;br /&gt;
#define OP_GetGameRef			0x62&lt;br /&gt;
#define OP_waittillFrameEnd		0x63&lt;br /&gt;
#define OP_SafeSetVariableFieldCached0		0x64&lt;br /&gt;
#define OP_SafeSetVariableFieldCached		0x65&lt;br /&gt;
#define OP_ScriptMethodChildThreadCallPointer		0x66&lt;br /&gt;
#define OP_GetLevel			0x67&lt;br /&gt;
#define OP_notify			0x68&lt;br /&gt;
#define OP_DecTop			0x69&lt;br /&gt;
#define OP_shift_left		0x6A&lt;br /&gt;
#define OP_ScriptLocalMethodThreadCall		0x6B&lt;br /&gt;
#define OP_ScriptLocalMethodChildThreadCall	0x6C&lt;br /&gt;
#define OP_greater						0x6D&lt;br /&gt;
#define OP_EvalLocalVariableCached0		0x6E&lt;br /&gt;
#define OP_EvalLocalVariableCached1		0x6F&lt;br /&gt;
#define OP_EvalLocalVariableCached2		0x70&lt;br /&gt;
#define OP_EvalLocalVariableCached3		0x71&lt;br /&gt;
#define OP_EvalLocalVariableCached4		0x72&lt;br /&gt;
#define OP_EvalLocalVariableCached5		0x73&lt;br /&gt;
#define OP_EvalLocalVariableCached		0x74&lt;br /&gt;
#define OP_SafeSetWaittillVariableFieldCached		0x75&lt;br /&gt;
#define OP_jump							0x76&lt;br /&gt;
#define OP_ScriptThreadCallPointer		0x77&lt;br /&gt;
#define OP_GetZero				0x78&lt;br /&gt;
#define OP_wait					0x79&lt;br /&gt;
#define OP_minus				0x7A&lt;br /&gt;
#define OP_SetSelfFieldVariableField		0x7B&lt;br /&gt;
#define OP_EvalNewLocalVariableRefCached0	0x7C&lt;br /&gt;
#define OP_multiply						0x7D&lt;br /&gt;
#define OP_CreateLocalVariable			0x7E&lt;br /&gt;
#define OP_ScriptLocalChildThreadCall	0x7F&lt;br /&gt;
#define OP_GetInteger					0x80&lt;br /&gt;
#define OP_mod							0x81&lt;br /&gt;
#define OP_EvalAnimFieldVariableRef		0x82&lt;br /&gt;
#define OP_GetBuiltinFunction			0x83&lt;br /&gt;
#define OP_GetGame				0x84&lt;br /&gt;
#define OP_waittill				0x85&lt;br /&gt;
#define OP_dec					0x86&lt;br /&gt;
#define OP_EvalLocalVariableObjectCached	0x87&lt;br /&gt;
#define OP_PreScriptCall		0x88&lt;br /&gt;
#define OP_GetAnim				0x89&lt;br /&gt;
#define OP_GetUndefined			0x8A&lt;br /&gt;
#define OP_EvalLevelFieldVariableRef		0x8B&lt;br /&gt;
#define OP_GetAnimObject		0x8C&lt;br /&gt;
#define OP_GetLevelObject		0x8D&lt;br /&gt;
#define OP_bit_ex_or			0x8E&lt;br /&gt;
#define OP_equality				0x8F&lt;br /&gt;
#define OP_ClearArray			0x90&lt;br /&gt;
#define OP_jumpback				0x91&lt;br /&gt;
#define OP_GetAnimation			0x92&lt;br /&gt;
#define OP_EvalAnimFieldVariable		0x93&lt;br /&gt;
#define OP_GetAnimTree					0x94&lt;br /&gt;
#define OP_GetIString					0x95&lt;br /&gt;
#define OP_EvalArrayRef					0x96&lt;br /&gt;
#define OP_EvalSelfFieldVariableRef		0x97&lt;br /&gt;
#define OP_GetNegByte					0x98&lt;br /&gt;
#define OP_GetBuiltinMethod				0x99&lt;br /&gt;
#define OP_CallBuiltinMethodPointer		0x9A&lt;br /&gt;
#define OP_EvalArray				0x9B&lt;br /&gt;
#define OP_vector					0x9C&lt;br /&gt;
#define OP_ScriptFarMethodCall		0x9D&lt;br /&gt;
#define OP_EvalLocalArrayCached		0x9E&lt;br /&gt;
#define OP_GetByte					0x9F&lt;br /&gt;
#define OP_ScriptChildThreadCallPointer		0xA0&lt;br /&gt;
#define OP_bit_or				0xA1&lt;br /&gt;
#define OP_AddArray				0xA2&lt;br /&gt;
#define OP_waittillmatch2		0xA3&lt;br /&gt;
#define OP_waittillmatch		0xA4&lt;br /&gt;
#define OP_GetLocalFunction		0xA5&lt;br /&gt;
#define OP_GetNegUnsignedShort		0xA6&lt;br /&gt;
#define OP_shift_right				0xA7&lt;br /&gt;
#define OP_CallBuiltinMethod0		0xA8&lt;br /&gt;
#define OP_CallBuiltinMethod1		0xA9&lt;br /&gt;
#define OP_CallBuiltinMethod2		0xAA&lt;br /&gt;
#define OP_CallBuiltinMethod3		0xAB&lt;br /&gt;
#define OP_CallBuiltinMethod4		0xAC&lt;br /&gt;
#define OP_CallBuiltinMethod5		0xAD&lt;br /&gt;
#define OP_CallBuiltinMethod		0xAE&lt;br /&gt;
#define OP_JumpOnFalse				0xAF&lt;br /&gt;
#define OP_count				0xB0&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
=== OP_CallBuiltin ===&lt;br /&gt;
These opcodes are used to make calls to native functions built into the game&#039;s executable. Unline methods, these functions do not pass any objects. For opcodes OP_CallBuiltin0 through OP_CallBuiltin5, the number it ends with is the number of parameters to be passed to the function. For OP_CallBuiltin, the number of parameters is loaded after the opcode as an 8 bit integer. The function id is then loaded as a 16 bit integer. That value is then used as an index in the function table below.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; class=&amp;quot;article-table mw-collapsible mw-collapsed wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!rowspan=&amp;quot;2&amp;quot;|Function&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|MW3&lt;br /&gt;
|-&lt;br /&gt;
!PC ID&lt;br /&gt;
!PS3/XBOX ID&lt;br /&gt;
&amp;lt;!-- funcion list 1 --&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|createprintchannel&lt;br /&gt;
|N/A&lt;br /&gt;
|0x1&lt;br /&gt;
|-&lt;br /&gt;
|setprintchannel&lt;br /&gt;
|0xe&lt;br /&gt;
|0x2&lt;br /&gt;
|-&lt;br /&gt;
|print&lt;br /&gt;
|0xf&lt;br /&gt;
|0x3&lt;br /&gt;
|-&lt;br /&gt;
|println&lt;br /&gt;
|0x10&lt;br /&gt;
|0x4&lt;br /&gt;
|-&lt;br /&gt;
|print3d&lt;br /&gt;
|0x11&lt;br /&gt;
|0x5&lt;br /&gt;
|-&lt;br /&gt;
|line&lt;br /&gt;
|0x12&lt;br /&gt;
|0x6&lt;br /&gt;
|-&lt;br /&gt;
|precacheturret&lt;br /&gt;
|N/A&lt;br /&gt;
|0x7&lt;br /&gt;
|-&lt;br /&gt;
|getweaponarray&lt;br /&gt;
|N/A&lt;br /&gt;
|0x8&lt;br /&gt;
|-&lt;br /&gt;
|spawnturret&lt;br /&gt;
|0x13&lt;br /&gt;
|0x9&lt;br /&gt;
|-&lt;br /&gt;
|canspawnturret&lt;br /&gt;
|0x14&lt;br /&gt;
|0xa&lt;br /&gt;
|-&lt;br /&gt;
|assert&lt;br /&gt;
|0x15&lt;br /&gt;
|0xb&lt;br /&gt;
|-&lt;br /&gt;
|assertex&lt;br /&gt;
|0x26&lt;br /&gt;
|0xc&lt;br /&gt;
|-&lt;br /&gt;
|assertmsg&lt;br /&gt;
|0x27&lt;br /&gt;
|0xd&lt;br /&gt;
|-&lt;br /&gt;
|isdefined&lt;br /&gt;
|0x28&lt;br /&gt;
|0xe&lt;br /&gt;
|-&lt;br /&gt;
|isstring&lt;br /&gt;
|0x29&lt;br /&gt;
|0xf&lt;br /&gt;
|-&lt;br /&gt;
|setdvar&lt;br /&gt;
|0x2a&lt;br /&gt;
|0x10&lt;br /&gt;
|-&lt;br /&gt;
|setdynamicdvar&lt;br /&gt;
|0x2b&lt;br /&gt;
|0x11&lt;br /&gt;
|-&lt;br /&gt;
|setdvarifuninitialized&lt;br /&gt;
|0x2c&lt;br /&gt;
|0x12&lt;br /&gt;
|-&lt;br /&gt;
|setdevdvar&lt;br /&gt;
|0x2d&lt;br /&gt;
|0x13&lt;br /&gt;
|-&lt;br /&gt;
|setdevdvarifuninitialized&lt;br /&gt;
|0x2e&lt;br /&gt;
|0x14&lt;br /&gt;
|-&lt;br /&gt;
|getdvar&lt;br /&gt;
|0x2f&lt;br /&gt;
|0x15&lt;br /&gt;
|-&lt;br /&gt;
|getdvarint&lt;br /&gt;
|0x30&lt;br /&gt;
|0x16&lt;br /&gt;
|-&lt;br /&gt;
|getdvarfloat&lt;br /&gt;
|0x31&lt;br /&gt;
|0x17&lt;br /&gt;
|-&lt;br /&gt;
|getdvarvector&lt;br /&gt;
|0x32&lt;br /&gt;
|0x18&lt;br /&gt;
|-&lt;br /&gt;
|gettime&lt;br /&gt;
|0x33&lt;br /&gt;
|0x19&lt;br /&gt;
|-&lt;br /&gt;
|getentbynum&lt;br /&gt;
|0x34&lt;br /&gt;
|0x1a&lt;br /&gt;
|-&lt;br /&gt;
|getweaponmodel&lt;br /&gt;
|0x35&lt;br /&gt;
|0x1b&lt;br /&gt;
|-&lt;br /&gt;
|getweaponhidetags&lt;br /&gt;
|0x51&lt;br /&gt;
|0x1c&lt;br /&gt;
|-&lt;br /&gt;
|getanimlength&lt;br /&gt;
|0x52&lt;br /&gt;
|0x1d&lt;br /&gt;
|-&lt;br /&gt;
|animhasnotetrack&lt;br /&gt;
|0x53&lt;br /&gt;
|0x1e&lt;br /&gt;
|-&lt;br /&gt;
|getnotetracktimes&lt;br /&gt;
|0x54&lt;br /&gt;
|0x1f&lt;br /&gt;
|-&lt;br /&gt;
|spawn&lt;br /&gt;
|0x55&lt;br /&gt;
|0x20&lt;br /&gt;
|-&lt;br /&gt;
|spawnloopsound&lt;br /&gt;
|0x56&lt;br /&gt;
|0x21&lt;br /&gt;
|-&lt;br /&gt;
|bullettrace&lt;br /&gt;
|0x57&lt;br /&gt;
|0x22&lt;br /&gt;
|-&lt;br /&gt;
|bullettracepassed&lt;br /&gt;
|0x58&lt;br /&gt;
|0x23&lt;br /&gt;
|-&lt;br /&gt;
|sighttracepassed&lt;br /&gt;
|0x74&lt;br /&gt;
|0x24&lt;br /&gt;
|-&lt;br /&gt;
|physicstrace&lt;br /&gt;
|0x75&lt;br /&gt;
|0x25&lt;br /&gt;
|-&lt;br /&gt;
|physicstracenormal&lt;br /&gt;
|0x76&lt;br /&gt;
|0x26&lt;br /&gt;
|-&lt;br /&gt;
|playerphysicstrace&lt;br /&gt;
|0x77&lt;br /&gt;
|0x27&lt;br /&gt;
|-&lt;br /&gt;
|getgroundposition&lt;br /&gt;
|0x78&lt;br /&gt;
|0x28&lt;br /&gt;
|-&lt;br /&gt;
|getmovedelta&lt;br /&gt;
|0x79&lt;br /&gt;
|0x29&lt;br /&gt;
|-&lt;br /&gt;
|getangledelta&lt;br /&gt;
|0x7a&lt;br /&gt;
|0x2a&lt;br /&gt;
|-&lt;br /&gt;
|getnorthyaw&lt;br /&gt;
|0x7b&lt;br /&gt;
|0x2b&lt;br /&gt;
|-&lt;br /&gt;
|setnorthyaw&lt;br /&gt;
|0x96&lt;br /&gt;
|0x2c&lt;br /&gt;
|-&lt;br /&gt;
|setslowmotion&lt;br /&gt;
|0x97&lt;br /&gt;
|0x2d&lt;br /&gt;
|-&lt;br /&gt;
|randomint&lt;br /&gt;
|0x98&lt;br /&gt;
|0x2e&lt;br /&gt;
|-&lt;br /&gt;
|randomfloat&lt;br /&gt;
|0x99&lt;br /&gt;
|0x2f&lt;br /&gt;
|-&lt;br /&gt;
|randomintrange&lt;br /&gt;
|0x9a&lt;br /&gt;
|0x30&lt;br /&gt;
|-&lt;br /&gt;
|randomfloatrange&lt;br /&gt;
|0x9b&lt;br /&gt;
|0x31&lt;br /&gt;
|-&lt;br /&gt;
|sin&lt;br /&gt;
|0x9c&lt;br /&gt;
|0x32&lt;br /&gt;
|-&lt;br /&gt;
|cos&lt;br /&gt;
|0x9d&lt;br /&gt;
|0x33&lt;br /&gt;
|-&lt;br /&gt;
|tan&lt;br /&gt;
|0x9e&lt;br /&gt;
|0x34&lt;br /&gt;
|-&lt;br /&gt;
|asin&lt;br /&gt;
|0x9f&lt;br /&gt;
|0x35&lt;br /&gt;
|-&lt;br /&gt;
|acos&lt;br /&gt;
|0xa0&lt;br /&gt;
|0x36&lt;br /&gt;
|-&lt;br /&gt;
|atan&lt;br /&gt;
|0xa1&lt;br /&gt;
|0x37&lt;br /&gt;
|-&lt;br /&gt;
|int&lt;br /&gt;
|0xa2&lt;br /&gt;
|0x38&lt;br /&gt;
|-&lt;br /&gt;
|float&lt;br /&gt;
|0xa3&lt;br /&gt;
|0x39&lt;br /&gt;
|-&lt;br /&gt;
|abs&lt;br /&gt;
|0xa4&lt;br /&gt;
|0x3a&lt;br /&gt;
|-&lt;br /&gt;
|min&lt;br /&gt;
|0xa5&lt;br /&gt;
|0x3b&lt;br /&gt;
|-&lt;br /&gt;
|max&lt;br /&gt;
|0xc6&lt;br /&gt;
|0x3c&lt;br /&gt;
|-&lt;br /&gt;
|floor&lt;br /&gt;
|0xc7&lt;br /&gt;
|0x3d&lt;br /&gt;
|-&lt;br /&gt;
|ceil&lt;br /&gt;
|0xc8&lt;br /&gt;
|0x3e&lt;br /&gt;
|-&lt;br /&gt;
|exp&lt;br /&gt;
|0xc9&lt;br /&gt;
|0x3f&lt;br /&gt;
|-&lt;br /&gt;
|log&lt;br /&gt;
|0xca&lt;br /&gt;
|0x40&lt;br /&gt;
|-&lt;br /&gt;
|sqrt&lt;br /&gt;
|0xcb&lt;br /&gt;
|0x41&lt;br /&gt;
|-&lt;br /&gt;
|squared&lt;br /&gt;
|0xcc&lt;br /&gt;
|0x42&lt;br /&gt;
|-&lt;br /&gt;
|clamp&lt;br /&gt;
|0xcd&lt;br /&gt;
|0x43&lt;br /&gt;
|-&lt;br /&gt;
|angleclamp&lt;br /&gt;
|0xce&lt;br /&gt;
|0x44&lt;br /&gt;
|-&lt;br /&gt;
|angleclamp180&lt;br /&gt;
|0xcf&lt;br /&gt;
|0x45&lt;br /&gt;
|-&lt;br /&gt;
|vectorfromlinetopoint&lt;br /&gt;
|0xd0&lt;br /&gt;
|0x46&lt;br /&gt;
|-&lt;br /&gt;
|pointonsegmentnearesttopoint&lt;br /&gt;
|0xd1&lt;br /&gt;
|0x47&lt;br /&gt;
|-&lt;br /&gt;
|distance&lt;br /&gt;
|0xd2&lt;br /&gt;
|0x48&lt;br /&gt;
|-&lt;br /&gt;
|distance2d&lt;br /&gt;
|0xd3&lt;br /&gt;
|0x49&lt;br /&gt;
|-&lt;br /&gt;
|distancesquared&lt;br /&gt;
|0xd4&lt;br /&gt;
|0x4a&lt;br /&gt;
|-&lt;br /&gt;
|length&lt;br /&gt;
|0xd5&lt;br /&gt;
|0x4b&lt;br /&gt;
|-&lt;br /&gt;
|lengthsquared&lt;br /&gt;
|0xd6&lt;br /&gt;
|0x4c&lt;br /&gt;
|-&lt;br /&gt;
|closer&lt;br /&gt;
|0xd7&lt;br /&gt;
|0x4d&lt;br /&gt;
|-&lt;br /&gt;
|vectordot&lt;br /&gt;
|0xd8&lt;br /&gt;
|0x4e&lt;br /&gt;
|-&lt;br /&gt;
|vectornormalize&lt;br /&gt;
|0xf6&lt;br /&gt;
|0x4f&lt;br /&gt;
|-&lt;br /&gt;
|vectortoangles&lt;br /&gt;
|0xf7&lt;br /&gt;
|0x50&lt;br /&gt;
|-&lt;br /&gt;
|vectortoyaw&lt;br /&gt;
|0xf8&lt;br /&gt;
|0x51&lt;br /&gt;
|-&lt;br /&gt;
|vectorlerp&lt;br /&gt;
|0xf9&lt;br /&gt;
|0x52&lt;br /&gt;
|-&lt;br /&gt;
|anglestoup&lt;br /&gt;
|0xfa&lt;br /&gt;
|0x53&lt;br /&gt;
|-&lt;br /&gt;
|anglestoright&lt;br /&gt;
|0xfb&lt;br /&gt;
|0x54&lt;br /&gt;
|-&lt;br /&gt;
|anglestoforward&lt;br /&gt;
|0xfc&lt;br /&gt;
|0x55&lt;br /&gt;
|-&lt;br /&gt;
|combineangles&lt;br /&gt;
|0xfd&lt;br /&gt;
|0x56&lt;br /&gt;
|-&lt;br /&gt;
|transformmove&lt;br /&gt;
|0xfe&lt;br /&gt;
|0x57&lt;br /&gt;
|-&lt;br /&gt;
|issubstr&lt;br /&gt;
|0xff&lt;br /&gt;
|0x58&lt;br /&gt;
|-&lt;br /&gt;
|isendstr&lt;br /&gt;
|0x100&lt;br /&gt;
|0x59&lt;br /&gt;
|-&lt;br /&gt;
|getsubstr&lt;br /&gt;
|0x101&lt;br /&gt;
|0x5a&lt;br /&gt;
|-&lt;br /&gt;
|tolower&lt;br /&gt;
|0x102&lt;br /&gt;
|0x5b&lt;br /&gt;
|-&lt;br /&gt;
|strtok&lt;br /&gt;
|0x103&lt;br /&gt;
|0x5c&lt;br /&gt;
|-&lt;br /&gt;
|stricmp&lt;br /&gt;
|0x104&lt;br /&gt;
|0x5d&lt;br /&gt;
|-&lt;br /&gt;
|ambientplay&lt;br /&gt;
|0x105&lt;br /&gt;
|0x5e&lt;br /&gt;
|-&lt;br /&gt;
|ambientstop&lt;br /&gt;
|0x125&lt;br /&gt;
|0x5f&lt;br /&gt;
|-&lt;br /&gt;
|precachemodel&lt;br /&gt;
|0x126&lt;br /&gt;
|0x60&lt;br /&gt;
|-&lt;br /&gt;
|precacheshellshock&lt;br /&gt;
|0x127&lt;br /&gt;
|0x61&lt;br /&gt;
|-&lt;br /&gt;
|precacheitem&lt;br /&gt;
|0x128&lt;br /&gt;
|0x62&lt;br /&gt;
|-&lt;br /&gt;
|precacheshader&lt;br /&gt;
|0x129&lt;br /&gt;
|0x63&lt;br /&gt;
|-&lt;br /&gt;
|precachestring&lt;br /&gt;
|0x12a&lt;br /&gt;
|0x64&lt;br /&gt;
|-&lt;br /&gt;
|precachemenu&lt;br /&gt;
|0x12b&lt;br /&gt;
|0x65&lt;br /&gt;
|-&lt;br /&gt;
|precacherumble&lt;br /&gt;
|0x12c&lt;br /&gt;
|0x66&lt;br /&gt;
|-&lt;br /&gt;
|precachelocationselector&lt;br /&gt;
|0x12d&lt;br /&gt;
|0x67&lt;br /&gt;
|-&lt;br /&gt;
|precacheleaderboards&lt;br /&gt;
|0x12e&lt;br /&gt;
|0x68&lt;br /&gt;
|-&lt;br /&gt;
|precacheheadicon&lt;br /&gt;
|0x146&lt;br /&gt;
|0xe9&lt;br /&gt;
|-&lt;br /&gt;
|loadfx&lt;br /&gt;
|0x12f&lt;br /&gt;
|0x1c5&lt;br /&gt;
|-&lt;br /&gt;
|playfx&lt;br /&gt;
|0x130&lt;br /&gt;
|0x1c6&lt;br /&gt;
|-&lt;br /&gt;
|unknown&lt;br /&gt;
|N/A&lt;br /&gt;
|0x69&lt;br /&gt;
|-&lt;br /&gt;
|playfxontag&lt;br /&gt;
|0x131&lt;br /&gt;
|0x6a&lt;br /&gt;
|-&lt;br /&gt;
|stopfxontag&lt;br /&gt;
|0x132&lt;br /&gt;
|0x6b&lt;br /&gt;
|-&lt;br /&gt;
|killfxontag&lt;br /&gt;
|N/A&lt;br /&gt;
|0x6c&lt;br /&gt;
|-&lt;br /&gt;
|playloopedfx&lt;br /&gt;
|0x133&lt;br /&gt;
|0x6d&lt;br /&gt;
|-&lt;br /&gt;
|spawnfx&lt;br /&gt;
|0x134&lt;br /&gt;
|0x6e&lt;br /&gt;
|-&lt;br /&gt;
|triggerfx&lt;br /&gt;
|0x135&lt;br /&gt;
|0x6f&lt;br /&gt;
|-&lt;br /&gt;
|playfxontagforclients&lt;br /&gt;
|0x136&lt;br /&gt;
|0x70&lt;br /&gt;
|-&lt;br /&gt;
|physicsexplosionsphere&lt;br /&gt;
|0x15a&lt;br /&gt;
|0x71&lt;br /&gt;
|-&lt;br /&gt;
|physicsexplosioncylinder&lt;br /&gt;
|0x15b&lt;br /&gt;
|0x72&lt;br /&gt;
|-&lt;br /&gt;
|physicsjolt&lt;br /&gt;
|0x15c&lt;br /&gt;
|0x73&lt;br /&gt;
|-&lt;br /&gt;
|physicsjitter&lt;br /&gt;
|0x15d&lt;br /&gt;
|0x74&lt;br /&gt;
|-&lt;br /&gt;
|setexpfog&lt;br /&gt;
|0x15e&lt;br /&gt;
|0x75&lt;br /&gt;
|-&lt;br /&gt;
|isexplosivedamagemod&lt;br /&gt;
|0x15f&lt;br /&gt;
|0x76&lt;br /&gt;
|-&lt;br /&gt;
|radiusdamage&lt;br /&gt;
|0x160&lt;br /&gt;
|0x77&lt;br /&gt;
|-&lt;br /&gt;
|setplayerignoreradiusdamage&lt;br /&gt;
|0x161&lt;br /&gt;
|0x78&lt;br /&gt;
|-&lt;br /&gt;
|glassradiusdamage&lt;br /&gt;
|0x162&lt;br /&gt;
|0x79&lt;br /&gt;
|-&lt;br /&gt;
|earthquake&lt;br /&gt;
|0x163&lt;br /&gt;
|0x7a&lt;br /&gt;
|-&lt;br /&gt;
|getnumparts&lt;br /&gt;
|0x164&lt;br /&gt;
|0x7b&lt;br /&gt;
|-&lt;br /&gt;
|getpartname&lt;br /&gt;
|0x182&lt;br /&gt;
|0x7c&lt;br /&gt;
|-&lt;br /&gt;
|weaponfiretime&lt;br /&gt;
|0x183&lt;br /&gt;
|0x7d&lt;br /&gt;
|-&lt;br /&gt;
|weaponclipsize&lt;br /&gt;
|0x184&lt;br /&gt;
|0x7e&lt;br /&gt;
|-&lt;br /&gt;
|weaponisauto&lt;br /&gt;
|0x185&lt;br /&gt;
|0x7f&lt;br /&gt;
|-&lt;br /&gt;
|weaponissemiauto&lt;br /&gt;
|0x186&lt;br /&gt;
|0x80&lt;br /&gt;
|-&lt;br /&gt;
|weaponisboltaction&lt;br /&gt;
|0x187&lt;br /&gt;
|0x81&lt;br /&gt;
|-&lt;br /&gt;
|weaponinheritsperks&lt;br /&gt;
|0x188&lt;br /&gt;
|0x82&lt;br /&gt;
|-&lt;br /&gt;
|weaponburstcount&lt;br /&gt;
|0x189&lt;br /&gt;
|0x83&lt;br /&gt;
|-&lt;br /&gt;
|weapontype&lt;br /&gt;
|0x18a&lt;br /&gt;
|0x84&lt;br /&gt;
|-&lt;br /&gt;
|weaponclass&lt;br /&gt;
|0x18b&lt;br /&gt;
|0x85&lt;br /&gt;
|-&lt;br /&gt;
|weaponinventorytype&lt;br /&gt;
|0x1b5&lt;br /&gt;
|0x86&lt;br /&gt;
|-&lt;br /&gt;
|weaponstartammo&lt;br /&gt;
|0x1b6&lt;br /&gt;
|0x87&lt;br /&gt;
|-&lt;br /&gt;
|weaponmaxammo&lt;br /&gt;
|0x1b7&lt;br /&gt;
|0x88&lt;br /&gt;
|-&lt;br /&gt;
|weaponaltweaponname&lt;br /&gt;
|0x1b8&lt;br /&gt;
|0x89&lt;br /&gt;
|-&lt;br /&gt;
|isweaponcliponly&lt;br /&gt;
|0x1b9&lt;br /&gt;
|0x8a&lt;br /&gt;
|-&lt;br /&gt;
|isweapondetonationtimed&lt;br /&gt;
|0x1ba&lt;br /&gt;
|0x8b&lt;br /&gt;
|-&lt;br /&gt;
|weaponhasthermalscope&lt;br /&gt;
|0x1bb&lt;br /&gt;
|0x8c&lt;br /&gt;
|-&lt;br /&gt;
|getvehiclenode&lt;br /&gt;
|0x1bc&lt;br /&gt;
|0x8d&lt;br /&gt;
|-&lt;br /&gt;
|getvehiclenodearray&lt;br /&gt;
|0x1bd&lt;br /&gt;
|0x8e&lt;br /&gt;
|-&lt;br /&gt;
|getallvehiclenodes&lt;br /&gt;
|0x1be&lt;br /&gt;
|0x8f&lt;br /&gt;
|-&lt;br /&gt;
|getnumvehicles&lt;br /&gt;
|0x1bf&lt;br /&gt;
|0x90&lt;br /&gt;
|-&lt;br /&gt;
|precachevehicle&lt;br /&gt;
|0x1c0&lt;br /&gt;
|0x91&lt;br /&gt;
|-&lt;br /&gt;
|spawnvehicle&lt;br /&gt;
|0x1c1&lt;br /&gt;
|0x92&lt;br /&gt;
|-&lt;br /&gt;
|getarray&lt;br /&gt;
|0x1c2&lt;br /&gt;
|0x93&lt;br /&gt;
|-&lt;br /&gt;
|getspawnerarray&lt;br /&gt;
|0x198&lt;br /&gt;
|0x94&lt;br /&gt;
|-&lt;br /&gt;
|playrumbleonposition&lt;br /&gt;
|0x199&lt;br /&gt;
|0x95&lt;br /&gt;
|-&lt;br /&gt;
|playrumblelooponposition&lt;br /&gt;
|0x19a&lt;br /&gt;
|0x96&lt;br /&gt;
|-&lt;br /&gt;
|stopallrumbles&lt;br /&gt;
|0x19b&lt;br /&gt;
|0x97&lt;br /&gt;
|-&lt;br /&gt;
|soundexists&lt;br /&gt;
|0x19c&lt;br /&gt;
|0x98&lt;br /&gt;
|-&lt;br /&gt;
|openfile&lt;br /&gt;
|0x19d&lt;br /&gt;
|0x99&lt;br /&gt;
|-&lt;br /&gt;
|closefile&lt;br /&gt;
|0x19e&lt;br /&gt;
|0x9a&lt;br /&gt;
|-&lt;br /&gt;
|fprintln&lt;br /&gt;
|0x19f&lt;br /&gt;
|0x9b&lt;br /&gt;
|-&lt;br /&gt;
|fprintfields&lt;br /&gt;
|0x1a0&lt;br /&gt;
|0x9c&lt;br /&gt;
|-&lt;br /&gt;
|freadln&lt;br /&gt;
|0x1a1&lt;br /&gt;
|0x9d&lt;br /&gt;
|-&lt;br /&gt;
|fgetarg&lt;br /&gt;
|0x1a2&lt;br /&gt;
|0x9e&lt;br /&gt;
|-&lt;br /&gt;
|setminimap&lt;br /&gt;
|0x1a3&lt;br /&gt;
|0x9f&lt;br /&gt;
|-&lt;br /&gt;
|setthermalbodymaterial&lt;br /&gt;
|0x1a4&lt;br /&gt;
|0xa0&lt;br /&gt;
|-&lt;br /&gt;
|getarraykeys&lt;br /&gt;
|0x1a5&lt;br /&gt;
|0xa1&lt;br /&gt;
|-&lt;br /&gt;
|getfirstarraykey&lt;br /&gt;
|0x1a6&lt;br /&gt;
|0xa2&lt;br /&gt;
|-&lt;br /&gt;
|getnextarraykey&lt;br /&gt;
|0x18c&lt;br /&gt;
|0xa3&lt;br /&gt;
|-&lt;br /&gt;
|sortbydistance&lt;br /&gt;
|0x18d&lt;br /&gt;
|0xa4&lt;br /&gt;
|-&lt;br /&gt;
|tablelookup&lt;br /&gt;
|0x18e&lt;br /&gt;
|0xa5&lt;br /&gt;
|-&lt;br /&gt;
|tablelookupbyrow&lt;br /&gt;
|0x18f&lt;br /&gt;
|0xa6&lt;br /&gt;
|-&lt;br /&gt;
|tablelookupistring&lt;br /&gt;
|0x190&lt;br /&gt;
|0xa7&lt;br /&gt;
|-&lt;br /&gt;
|tablelookupistringbyrow&lt;br /&gt;
|0x191&lt;br /&gt;
|0xa8&lt;br /&gt;
|-&lt;br /&gt;
|tablelookuprownum&lt;br /&gt;
|0x192&lt;br /&gt;
|0xa9&lt;br /&gt;
|-&lt;br /&gt;
|getmissileowner&lt;br /&gt;
|0x193&lt;br /&gt;
|0xaa&lt;br /&gt;
|-&lt;br /&gt;
|magicbullet&lt;br /&gt;
|0x194&lt;br /&gt;
|0xab&lt;br /&gt;
|-&lt;br /&gt;
|getweaponflashtagname&lt;br /&gt;
|0x195&lt;br /&gt;
|0xac&lt;br /&gt;
|-&lt;br /&gt;
|averagepoint&lt;br /&gt;
|0x196&lt;br /&gt;
|0xad&lt;br /&gt;
|-&lt;br /&gt;
|averagenormal&lt;br /&gt;
|0x197&lt;br /&gt;
|0xae&lt;br /&gt;
|-&lt;br /&gt;
|getglass&lt;br /&gt;
|0x1a7&lt;br /&gt;
|0xaf&lt;br /&gt;
|-&lt;br /&gt;
|getglassarray&lt;br /&gt;
|0x1a8&lt;br /&gt;
|0xb0&lt;br /&gt;
|-&lt;br /&gt;
|getglassorigin&lt;br /&gt;
|0x1a9&lt;br /&gt;
|0xb1&lt;br /&gt;
|-&lt;br /&gt;
|isglassdestroyed&lt;br /&gt;
|0x1aa&lt;br /&gt;
|0xb2&lt;br /&gt;
|-&lt;br /&gt;
|destroyglass&lt;br /&gt;
|0x1ab&lt;br /&gt;
|0xb3&lt;br /&gt;
|-&lt;br /&gt;
|deleteglass&lt;br /&gt;
|0x1ac&lt;br /&gt;
|0xb4&lt;br /&gt;
|-&lt;br /&gt;
|getentchannelscount&lt;br /&gt;
|0x1ad&lt;br /&gt;
|0xb5&lt;br /&gt;
|-&lt;br /&gt;
|getentchannelname&lt;br /&gt;
|N/A&lt;br /&gt;
|0xb6&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- objective functions --&amp;gt;&lt;br /&gt;
|objective_add&lt;br /&gt;
|0x1af&lt;br /&gt;
|0xb7&lt;br /&gt;
|-&lt;br /&gt;
|objective_delete&lt;br /&gt;
|0x1b0&lt;br /&gt;
|0xb8&lt;br /&gt;
|-&lt;br /&gt;
|objective_state&lt;br /&gt;
|0x1b1&lt;br /&gt;
|0xb9&lt;br /&gt;
|-&lt;br /&gt;
|objective_icon&lt;br /&gt;
|0x1b2&lt;br /&gt;
|0xba&lt;br /&gt;
|-&lt;br /&gt;
|objective_position&lt;br /&gt;
|0x1b3&lt;br /&gt;
|0xbb&lt;br /&gt;
|-&lt;br /&gt;
|objective_current&lt;br /&gt;
|0x1b4&lt;br /&gt;
|0xbc&lt;br /&gt;
|-&lt;br /&gt;
|objective_onentity&lt;br /&gt;
|0x165&lt;br /&gt;
|0xbd&lt;br /&gt;
|-&lt;br /&gt;
|objective_team&lt;br /&gt;
|0x166&lt;br /&gt;
|0xbe&lt;br /&gt;
|-&lt;br /&gt;
|objective_player&lt;br /&gt;
|0x167&lt;br /&gt;
|0xbf&lt;br /&gt;
|-&lt;br /&gt;
|objective_playerteam&lt;br /&gt;
|0x168&lt;br /&gt;
|0xc0&lt;br /&gt;
|-&lt;br /&gt;
|objective_playerenemyteam&lt;br /&gt;
|0x169&lt;br /&gt;
|0xc1&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- function list 2 --&amp;gt;&lt;br /&gt;
|iprintln&lt;br /&gt;
|0x16a&lt;br /&gt;
|0xc2&lt;br /&gt;
|-&lt;br /&gt;
|iprintlnbold&lt;br /&gt;
|0x16b&lt;br /&gt;
|0xc3&lt;br /&gt;
|-&lt;br /&gt;
|logstring&lt;br /&gt;
|0x16c&lt;br /&gt;
|0xc4&lt;br /&gt;
|-&lt;br /&gt;
|getent&lt;br /&gt;
|0x16d&lt;br /&gt;
|0xc5&lt;br /&gt;
|-&lt;br /&gt;
|getentarray&lt;br /&gt;
|0x16e&lt;br /&gt;
|0xc6&lt;br /&gt;
|-&lt;br /&gt;
|spawnplane&lt;br /&gt;
|0x16f&lt;br /&gt;
|0xc7&lt;br /&gt;
|-&lt;br /&gt;
|spawnstruct&lt;br /&gt;
|0x170&lt;br /&gt;
|0xc8&lt;br /&gt;
|-&lt;br /&gt;
|spawnhelicopter&lt;br /&gt;
|0x171&lt;br /&gt;
|0xc9&lt;br /&gt;
|-&lt;br /&gt;
|isalive&lt;br /&gt;
|0x172&lt;br /&gt;
|0xca&lt;br /&gt;
|-&lt;br /&gt;
|isspawner&lt;br /&gt;
|0x173&lt;br /&gt;
|0xcb&lt;br /&gt;
|-&lt;br /&gt;
|createattractorent&lt;br /&gt;
|0x174&lt;br /&gt;
|0xcc&lt;br /&gt;
|-&lt;br /&gt;
|createattractororigin&lt;br /&gt;
|0x175&lt;br /&gt;
|0xcd&lt;br /&gt;
|-&lt;br /&gt;
|createrepulsorent&lt;br /&gt;
|0x176&lt;br /&gt;
|0xce&lt;br /&gt;
|-&lt;br /&gt;
|createrepulsororigin&lt;br /&gt;
|0x177&lt;br /&gt;
|0xcf&lt;br /&gt;
|-&lt;br /&gt;
|deleteattractor&lt;br /&gt;
|0x178&lt;br /&gt;
|0xd0&lt;br /&gt;
|-&lt;br /&gt;
|playsoundatpos&lt;br /&gt;
|0x179&lt;br /&gt;
|0xd1&lt;br /&gt;
|-&lt;br /&gt;
|newhudelem&lt;br /&gt;
|0x17a&lt;br /&gt;
|0x1c7&lt;br /&gt;
|-&lt;br /&gt;
|newclienthudelem&lt;br /&gt;
|0x17b&lt;br /&gt;
|0xd2&lt;br /&gt;
|-&lt;br /&gt;
|newteamhudelem&lt;br /&gt;
|0x17c&lt;br /&gt;
|0xd3&lt;br /&gt;
|-&lt;br /&gt;
|newdamageindicatorhudelem&lt;br /&gt;
|N/A&lt;br /&gt;
|0xd4&lt;br /&gt;
|-&lt;br /&gt;
|resettimeout&lt;br /&gt;
|0x17d&lt;br /&gt;
|0xd5&lt;br /&gt;
|-&lt;br /&gt;
|precachefxteamthermal&lt;br /&gt;
|0x17e&lt;br /&gt;
|0xd6&lt;br /&gt;
|-&lt;br /&gt;
|isplayer&lt;br /&gt;
|0x17f&lt;br /&gt;
|0xd7&lt;br /&gt;
|-&lt;br /&gt;
|isplayernumber&lt;br /&gt;
|0x180&lt;br /&gt;
|0xd8&lt;br /&gt;
|-&lt;br /&gt;
|setsunlight&lt;br /&gt;
|0x39&lt;br /&gt;
|0x191&lt;br /&gt;
|-&lt;br /&gt;
|resetsunlight&lt;br /&gt;
|0x3a&lt;br /&gt;
|0x192&lt;br /&gt;
|-&lt;br /&gt;
|setwinningplayer&lt;br /&gt;
|0x181&lt;br /&gt;
|0xd9&lt;br /&gt;
|-&lt;br /&gt;
|setwinningteam&lt;br /&gt;
|0x137&lt;br /&gt;
|0xda&lt;br /&gt;
|-&lt;br /&gt;
|announcement&lt;br /&gt;
|0x138&lt;br /&gt;
|0xdb&lt;br /&gt;
|-&lt;br /&gt;
|clientannouncement&lt;br /&gt;
|0x139&lt;br /&gt;
|0xdc&lt;br /&gt;
|-&lt;br /&gt;
|getteamscore&lt;br /&gt;
|0x13a&lt;br /&gt;
|0xdd&lt;br /&gt;
|-&lt;br /&gt;
|setteamscore&lt;br /&gt;
|0x13b&lt;br /&gt;
|0xde&lt;br /&gt;
|-&lt;br /&gt;
|setclientnamemode&lt;br /&gt;
|0x13c&lt;br /&gt;
|0xdf&lt;br /&gt;
|-&lt;br /&gt;
|updateclientnames&lt;br /&gt;
|0x13d&lt;br /&gt;
|0xe0&lt;br /&gt;
|-&lt;br /&gt;
|getteamplayersalive&lt;br /&gt;
|0x13e&lt;br /&gt;
|0xe1&lt;br /&gt;
|-&lt;br /&gt;
|logprint&lt;br /&gt;
|0x13f&lt;br /&gt;
|0xe2&lt;br /&gt;
|-&lt;br /&gt;
|worldentnumber&lt;br /&gt;
|0x140&lt;br /&gt;
|0xe3&lt;br /&gt;
|-&lt;br /&gt;
|obituary&lt;br /&gt;
|0x141&lt;br /&gt;
|0xe4&lt;br /&gt;
|-&lt;br /&gt;
|positionwouldtelefrag&lt;br /&gt;
|0x142&lt;br /&gt;
|0xe5&lt;br /&gt;
|-&lt;br /&gt;
|canspawn&lt;br /&gt;
|0x143&lt;br /&gt;
|0xe6&lt;br /&gt;
|-&lt;br /&gt;
|getstarttime&lt;br /&gt;
|0x144&lt;br /&gt;
|0xe7&lt;br /&gt;
|-&lt;br /&gt;
|precachestatusicon&lt;br /&gt;
|0x145&lt;br /&gt;
|0xe8&lt;br /&gt;
|-&lt;br /&gt;
|precacheminimapicon&lt;br /&gt;
|0x147&lt;br /&gt;
|0xea&lt;br /&gt;
|-&lt;br /&gt;
|precachempanim&lt;br /&gt;
|0x148&lt;br /&gt;
|0xeb&lt;br /&gt;
|-&lt;br /&gt;
|restart&lt;br /&gt;
|0x149&lt;br /&gt;
|0xec&lt;br /&gt;
|-&lt;br /&gt;
|exitlevel&lt;br /&gt;
|0x14a&lt;br /&gt;
|0xed&lt;br /&gt;
|-&lt;br /&gt;
|addtestclient&lt;br /&gt;
|0x14b&lt;br /&gt;
|0xee&lt;br /&gt;
|-&lt;br /&gt;
|makedvarserverinfo&lt;br /&gt;
|0x14c&lt;br /&gt;
|0xef&lt;br /&gt;
|-&lt;br /&gt;
|setarchive&lt;br /&gt;
|0x14d&lt;br /&gt;
|0xf0&lt;br /&gt;
|-&lt;br /&gt;
|allclientsprint&lt;br /&gt;
|0x14e&lt;br /&gt;
|0xf1&lt;br /&gt;
|-&lt;br /&gt;
|clientprint&lt;br /&gt;
|0x14f&lt;br /&gt;
|0xf2&lt;br /&gt;
|-&lt;br /&gt;
|mapexists&lt;br /&gt;
|0x150&lt;br /&gt;
|0xf3&lt;br /&gt;
|-&lt;br /&gt;
|isvalidgametype&lt;br /&gt;
|0x151&lt;br /&gt;
|0xf4&lt;br /&gt;
|-&lt;br /&gt;
|matchend&lt;br /&gt;
|0x152&lt;br /&gt;
|0xf5&lt;br /&gt;
|-&lt;br /&gt;
|setplayerteamrank&lt;br /&gt;
|0x153&lt;br /&gt;
|0xf6&lt;br /&gt;
|-&lt;br /&gt;
|endparty&lt;br /&gt;
|0x154&lt;br /&gt;
|0xf7&lt;br /&gt;
|-&lt;br /&gt;
|setteamradar&lt;br /&gt;
|0x155&lt;br /&gt;
|0xf8&lt;br /&gt;
|-&lt;br /&gt;
|getteamradar&lt;br /&gt;
|0x156&lt;br /&gt;
|0xf9&lt;br /&gt;
|-&lt;br /&gt;
|setteamradarstrength&lt;br /&gt;
|0x157&lt;br /&gt;
|0xfa&lt;br /&gt;
|-&lt;br /&gt;
|getteamradarstrength&lt;br /&gt;
|0x158&lt;br /&gt;
|0xfb&lt;br /&gt;
|-&lt;br /&gt;
|getuavstrengthmin&lt;br /&gt;
|0x159&lt;br /&gt;
|0xfc&lt;br /&gt;
|-&lt;br /&gt;
|getuavstrengthmax&lt;br /&gt;
|0x106&lt;br /&gt;
|0xfd&lt;br /&gt;
|-&lt;br /&gt;
|getuavstrengthlevelneutral&lt;br /&gt;
|0x107&lt;br /&gt;
|0xfe&lt;br /&gt;
|-&lt;br /&gt;
|getuavstrengthlevelshowenemyfastsweep&lt;br /&gt;
|0x108&lt;br /&gt;
|0xff&lt;br /&gt;
|-&lt;br /&gt;
|getuavstrengthlevelshowenemydirectional&lt;br /&gt;
|0x109&lt;br /&gt;
|0x100&lt;br /&gt;
|-&lt;br /&gt;
|blockteamradar&lt;br /&gt;
|0x10a&lt;br /&gt;
|0x101&lt;br /&gt;
|-&lt;br /&gt;
|unblockteamradar&lt;br /&gt;
|0x10b&lt;br /&gt;
|0x102&lt;br /&gt;
|-&lt;br /&gt;
|isteamradarblocked&lt;br /&gt;
|0x10c&lt;br /&gt;
|0x103&lt;br /&gt;
|-&lt;br /&gt;
|getassignedteam&lt;br /&gt;
|0x10d&lt;br /&gt;
|0x104&lt;br /&gt;
|-&lt;br /&gt;
|setmatchdata&lt;br /&gt;
|0x10e&lt;br /&gt;
|0x105&lt;br /&gt;
|-&lt;br /&gt;
|getmatchdata&lt;br /&gt;
|0x10f&lt;br /&gt;
|0x106&lt;br /&gt;
|-&lt;br /&gt;
|sendmatchdata&lt;br /&gt;
|0x110&lt;br /&gt;
|0x107&lt;br /&gt;
|-&lt;br /&gt;
|clearmatchdata&lt;br /&gt;
|0x111&lt;br /&gt;
|0x108&lt;br /&gt;
|-&lt;br /&gt;
|setmatchdatadef&lt;br /&gt;
|0x112&lt;br /&gt;
|0x109&lt;br /&gt;
|-&lt;br /&gt;
|setmatchclientip&lt;br /&gt;
|0x113&lt;br /&gt;
|0x10a&lt;br /&gt;
|-&lt;br /&gt;
|setmatchdataid&lt;br /&gt;
|0x114&lt;br /&gt;
|0x10b&lt;br /&gt;
|-&lt;br /&gt;
|setclientmatchdata&lt;br /&gt;
|0x115&lt;br /&gt;
|0x10c&lt;br /&gt;
|-&lt;br /&gt;
|getclientmatchdata&lt;br /&gt;
|0x116&lt;br /&gt;
|0x10d&lt;br /&gt;
|-&lt;br /&gt;
|setclientmatchdatadef&lt;br /&gt;
|0x117&lt;br /&gt;
|0x10e&lt;br /&gt;
|-&lt;br /&gt;
|sendclientmatchdata&lt;br /&gt;
|0x118&lt;br /&gt;
|0x10f&lt;br /&gt;
|-&lt;br /&gt;
|getbuildversion&lt;br /&gt;
|0x119&lt;br /&gt;
|0x110&lt;br /&gt;
|-&lt;br /&gt;
|getbuildnumber&lt;br /&gt;
|0x11a&lt;br /&gt;
|0x111&lt;br /&gt;
|-&lt;br /&gt;
|getsystemtime&lt;br /&gt;
|0x11b&lt;br /&gt;
|0x112&lt;br /&gt;
|-&lt;br /&gt;
|getmatchrulesdata&lt;br /&gt;
|0x11c&lt;br /&gt;
|0x113&lt;br /&gt;
|-&lt;br /&gt;
|isusingmatchrulesdata&lt;br /&gt;
|0x11d&lt;br /&gt;
|0x114&lt;br /&gt;
|-&lt;br /&gt;
|kick&lt;br /&gt;
|0x11e&lt;br /&gt;
|0x115&lt;br /&gt;
|-&lt;br /&gt;
|issplitscreen&lt;br /&gt;
|0x11f&lt;br /&gt;
|0x116&lt;br /&gt;
|-&lt;br /&gt;
|setmapcenter&lt;br /&gt;
|0x120&lt;br /&gt;
|0x117&lt;br /&gt;
|-&lt;br /&gt;
|setgameendtime&lt;br /&gt;
|0x121&lt;br /&gt;
|0x118&lt;br /&gt;
|-&lt;br /&gt;
|visionsetnaked&lt;br /&gt;
|0x122&lt;br /&gt;
|0x119&lt;br /&gt;
|-&lt;br /&gt;
|visionsetnight&lt;br /&gt;
|0x123&lt;br /&gt;
|0x11a&lt;br /&gt;
|-&lt;br /&gt;
|visionsetmissilecam&lt;br /&gt;
|0x124&lt;br /&gt;
|0x11b&lt;br /&gt;
|-&lt;br /&gt;
|visionsetthermal&lt;br /&gt;
|0xd9&lt;br /&gt;
|0x11c&lt;br /&gt;
|-&lt;br /&gt;
|visionsetpain&lt;br /&gt;
|0xda&lt;br /&gt;
|0x11d&lt;br /&gt;
|-&lt;br /&gt;
|endlobby&lt;br /&gt;
|0xdb&lt;br /&gt;
|0x11e&lt;br /&gt;
|-&lt;br /&gt;
|ambience&lt;br /&gt;
|0xdc&lt;br /&gt;
|0x11f&lt;br /&gt;
|-&lt;br /&gt;
|getmapcustom&lt;br /&gt;
|0xdd&lt;br /&gt;
|0x120&lt;br /&gt;
|-&lt;br /&gt;
|updateskill&lt;br /&gt;
|0xde&lt;br /&gt;
|0x121&lt;br /&gt;
|-&lt;br /&gt;
|spawnsighttrace&lt;br /&gt;
|0xdf&lt;br /&gt;
|0x122&lt;br /&gt;
|-&lt;br /&gt;
|incrementcounter&lt;br /&gt;
|N/A&lt;br /&gt;
|0x123&lt;br /&gt;
|-&lt;br /&gt;
|getcountertotal&lt;br /&gt;
|N/A&lt;br /&gt;
|0x124&lt;br /&gt;
|}&lt;br /&gt;
=== OP_CallBuiltinMethod ===&lt;br /&gt;
These opcodes are used to make calls to native methods built into the game&#039;s executable. Unlike functions, the methods must pass an object. For OP_CallBuiltinMethod0 - OP_CallBuiltinMethod5, the number it ends with is the number of parameters to be passed to the function. For OP_CallBuiltinMethod, the number of parameters is loaded after the opcode as an 8 bit integer. The method id is then loaded as a 16 bit integer. That value is then used as an index in the method table below.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; class=&amp;quot;article-table mw-collapsible mw-collapsed wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!rowspan=&amp;quot;2&amp;quot;|Method&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|MW3&lt;br /&gt;
|-&lt;br /&gt;
!PC ID&lt;br /&gt;
!PS3/XBOX ID&lt;br /&gt;
&amp;lt;!-- builtin --&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|attach&lt;br /&gt;
|0x8017&lt;br /&gt;
|0x8000&lt;br /&gt;
|-&lt;br /&gt;
|attachshieldmodel&lt;br /&gt;
|0x8018&lt;br /&gt;
|0x8001&lt;br /&gt;
|-&lt;br /&gt;
|detach&lt;br /&gt;
|0x8024&lt;br /&gt;
|0x8002&lt;br /&gt;
|-&lt;br /&gt;
|detachshieldmodel&lt;br /&gt;
|0x8025&lt;br /&gt;
|0x8003&lt;br /&gt;
|-&lt;br /&gt;
|moveshieldmodel&lt;br /&gt;
|0x8026&lt;br /&gt;
|0x8004&lt;br /&gt;
|-&lt;br /&gt;
|detachall&lt;br /&gt;
|0x8027&lt;br /&gt;
|0x8005&lt;br /&gt;
|-&lt;br /&gt;
|getattachsize&lt;br /&gt;
|0x8028&lt;br /&gt;
|0x8006&lt;br /&gt;
|-&lt;br /&gt;
|getattachmodelname&lt;br /&gt;
|0x8029&lt;br /&gt;
|0x8007&lt;br /&gt;
|-&lt;br /&gt;
|getattachtagname&lt;br /&gt;
|0x802a&lt;br /&gt;
|0x8008&lt;br /&gt;
|-&lt;br /&gt;
|getattachignorecollision&lt;br /&gt;
|0x8043&lt;br /&gt;
|0x8009&lt;br /&gt;
|-&lt;br /&gt;
|hidepart&lt;br /&gt;
|0x8044&lt;br /&gt;
|0x800a&lt;br /&gt;
|-&lt;br /&gt;
|allinstances&lt;br /&gt;
|0x8045&lt;br /&gt;
|0x800b&lt;br /&gt;
|-&lt;br /&gt;
|hideallparts&lt;br /&gt;
|0x8046&lt;br /&gt;
|0x800c&lt;br /&gt;
|-&lt;br /&gt;
|showpart&lt;br /&gt;
|0x8047&lt;br /&gt;
|0x800d&lt;br /&gt;
|-&lt;br /&gt;
|showallparts&lt;br /&gt;
|0x8048&lt;br /&gt;
|0x800e&lt;br /&gt;
|-&lt;br /&gt;
|linkto&lt;br /&gt;
|0x8049&lt;br /&gt;
|0x800f&lt;br /&gt;
|-&lt;br /&gt;
|linktoblendtotag&lt;br /&gt;
|0x804a&lt;br /&gt;
|0x8010&lt;br /&gt;
|-&lt;br /&gt;
|unlink&lt;br /&gt;
|0x804b&lt;br /&gt;
|0x8011&lt;br /&gt;
|-&lt;br /&gt;
|islinked&lt;br /&gt;
|0x8063&lt;br /&gt;
|0x8012&lt;br /&gt;
|-&lt;br /&gt;
|enablelinkto&lt;br /&gt;
|0x8064&lt;br /&gt;
|0x8013&lt;br /&gt;
|-&lt;br /&gt;
|playerlinkto&lt;br /&gt;
|0x8075&lt;br /&gt;
|0x8014&lt;br /&gt;
|-&lt;br /&gt;
|playerlinktodelta&lt;br /&gt;
|0x8076&lt;br /&gt;
|0x8015&lt;br /&gt;
|-&lt;br /&gt;
|playerlinkweaponviewtodelta&lt;br /&gt;
|0x8077&lt;br /&gt;
|0x8016&lt;br /&gt;
|-&lt;br /&gt;
|playerlinktoabsolute&lt;br /&gt;
|0x8078&lt;br /&gt;
|0x8017&lt;br /&gt;
|-&lt;br /&gt;
|playerlinktoblend&lt;br /&gt;
|0x8079&lt;br /&gt;
|0x8018&lt;br /&gt;
|-&lt;br /&gt;
|playerlinkedoffsetenable&lt;br /&gt;
|0x807a&lt;br /&gt;
|0x8019&lt;br /&gt;
|-&lt;br /&gt;
|playerlinkedoffsetdisable&lt;br /&gt;
|0x8094&lt;br /&gt;
|0x801a&lt;br /&gt;
|-&lt;br /&gt;
|playerlinkedsetviewznear&lt;br /&gt;
|0x8095&lt;br /&gt;
|0x801b&lt;br /&gt;
|-&lt;br /&gt;
|playerlinkedsetusebaseangleforviewclamp&lt;br /&gt;
|0x8096&lt;br /&gt;
|0x801c&lt;br /&gt;
|-&lt;br /&gt;
|lerpviewangleclamp&lt;br /&gt;
|0x8097&lt;br /&gt;
|0x801d&lt;br /&gt;
|-&lt;br /&gt;
|setviewangleresistance&lt;br /&gt;
|0x8098&lt;br /&gt;
|0x801e&lt;br /&gt;
|-&lt;br /&gt;
|geteye&lt;br /&gt;
|0x8099&lt;br /&gt;
|0x801f&lt;br /&gt;
|-&lt;br /&gt;
|istouching&lt;br /&gt;
|0x809a&lt;br /&gt;
|0x8020&lt;br /&gt;
|-&lt;br /&gt;
|stoploopsound&lt;br /&gt;
|0x809b&lt;br /&gt;
|0x8021&lt;br /&gt;
|-&lt;br /&gt;
|stopsounds&lt;br /&gt;
|0x809c&lt;br /&gt;
|0x8022&lt;br /&gt;
|-&lt;br /&gt;
|playrumbleonentity&lt;br /&gt;
|0x809d&lt;br /&gt;
|0x8023&lt;br /&gt;
|-&lt;br /&gt;
|playrumblelooponentity&lt;br /&gt;
|0x809e&lt;br /&gt;
|0x8024&lt;br /&gt;
|-&lt;br /&gt;
|stoprumble&lt;br /&gt;
|0x809f&lt;br /&gt;
|0x8025&lt;br /&gt;
|-&lt;br /&gt;
|delete&lt;br /&gt;
|0x80a0&lt;br /&gt;
|0x8026&lt;br /&gt;
|-&lt;br /&gt;
|setmodel&lt;br /&gt;
|0x80a1&lt;br /&gt;
|0x8027&lt;br /&gt;
|-&lt;br /&gt;
|laseron&lt;br /&gt;
|0x80a2&lt;br /&gt;
|0x8028&lt;br /&gt;
|-&lt;br /&gt;
|laseroff&lt;br /&gt;
|0x80a3&lt;br /&gt;
|0x8029&lt;br /&gt;
|-&lt;br /&gt;
|laseraltviewon&lt;br /&gt;
|0x80a4&lt;br /&gt;
|0x802a&lt;br /&gt;
|-&lt;br /&gt;
|laseraltviewoff&lt;br /&gt;
|0x80a5&lt;br /&gt;
|0x802b&lt;br /&gt;
|-&lt;br /&gt;
|thermalvisionon&lt;br /&gt;
|0x80a6&lt;br /&gt;
|0x802c&lt;br /&gt;
|-&lt;br /&gt;
|thermalvisionoff&lt;br /&gt;
|0x80a7&lt;br /&gt;
|0x802d&lt;br /&gt;
|-&lt;br /&gt;
|thermaldrawenable&lt;br /&gt;
|0x8023&lt;br /&gt;
|0x82ef&lt;br /&gt;
|-&lt;br /&gt;
|thermaldrawdisable&lt;br /&gt;
|0x8000&lt;br /&gt;
|0x82f0&lt;br /&gt;
|-&lt;br /&gt;
|thermalvisionfofoverlayon&lt;br /&gt;
|0x80a8&lt;br /&gt;
|0x802e&lt;br /&gt;
|-&lt;br /&gt;
|thermalvisionfofoverlayoff&lt;br /&gt;
|0x80a9&lt;br /&gt;
|0x802f&lt;br /&gt;
|-&lt;br /&gt;
|autospotoverlayon&lt;br /&gt;
|0x80aa&lt;br /&gt;
|0x8030&lt;br /&gt;
|-&lt;br /&gt;
|autospotoverlayoff&lt;br /&gt;
|0x80ab&lt;br /&gt;
|0x8031&lt;br /&gt;
|-&lt;br /&gt;
|setcontents&lt;br /&gt;
|0x80ac&lt;br /&gt;
|0x8032&lt;br /&gt;
|-&lt;br /&gt;
|makeusable&lt;br /&gt;
|0x80ad&lt;br /&gt;
|0x8033&lt;br /&gt;
|-&lt;br /&gt;
|makeunusable&lt;br /&gt;
|0x80ae&lt;br /&gt;
|0x8034&lt;br /&gt;
|-&lt;br /&gt;
|setcursorhint&lt;br /&gt;
|0x80c6&lt;br /&gt;
|0x8035&lt;br /&gt;
|-&lt;br /&gt;
|sethintstring&lt;br /&gt;
|0x80c7&lt;br /&gt;
|0x8036&lt;br /&gt;
|-&lt;br /&gt;
|forceusehinton&lt;br /&gt;
|0x80c8&lt;br /&gt;
|0x8037&lt;br /&gt;
|-&lt;br /&gt;
|forceusehintoff&lt;br /&gt;
|0x80c9&lt;br /&gt;
|0x8038&lt;br /&gt;
|-&lt;br /&gt;
|makesoft&lt;br /&gt;
|0x80ca&lt;br /&gt;
|0x8039&lt;br /&gt;
|-&lt;br /&gt;
|makehard&lt;br /&gt;
|0x80cb&lt;br /&gt;
|0x803a&lt;br /&gt;
|-&lt;br /&gt;
|willneverchange&lt;br /&gt;
|0x80cc&lt;br /&gt;
|0x803b&lt;br /&gt;
|-&lt;br /&gt;
|startfiring&lt;br /&gt;
|0x80cd&lt;br /&gt;
|0x803c&lt;br /&gt;
|-&lt;br /&gt;
|stopfiring&lt;br /&gt;
|0x80ce&lt;br /&gt;
|0x803d&lt;br /&gt;
|-&lt;br /&gt;
|isfiringturret&lt;br /&gt;
|0x80cf&lt;br /&gt;
|0x803e&lt;br /&gt;
|-&lt;br /&gt;
|startbarrelspin&lt;br /&gt;
|0x80d0&lt;br /&gt;
|0x803f&lt;br /&gt;
|-&lt;br /&gt;
|stopbarrelspin&lt;br /&gt;
|0x80d1&lt;br /&gt;
|0x8040&lt;br /&gt;
|-&lt;br /&gt;
|getbarrelspinrate&lt;br /&gt;
|0x80d2&lt;br /&gt;
|0x8041&lt;br /&gt;
|-&lt;br /&gt;
|remotecontrolturret&lt;br /&gt;
|0x80d3&lt;br /&gt;
|0x8042&lt;br /&gt;
|-&lt;br /&gt;
|remotecontrolturretoff&lt;br /&gt;
|0x80d4&lt;br /&gt;
|0x8043&lt;br /&gt;
|-&lt;br /&gt;
|shootturret&lt;br /&gt;
|0x80d5&lt;br /&gt;
|0x8044&lt;br /&gt;
|-&lt;br /&gt;
|getturretowner&lt;br /&gt;
|0x80d6&lt;br /&gt;
|0x8045&lt;br /&gt;
|-&lt;br /&gt;
|setsentryowner&lt;br /&gt;
|0x80ee&lt;br /&gt;
|0x8046&lt;br /&gt;
|-&lt;br /&gt;
|setsentrycarrier&lt;br /&gt;
|0x80ef&lt;br /&gt;
|0x8047&lt;br /&gt;
|-&lt;br /&gt;
|setturretminimapvisible&lt;br /&gt;
|0x80f0&lt;br /&gt;
|0x8048&lt;br /&gt;
|-&lt;br /&gt;
|settargetentity&lt;br /&gt;
|0x80f1&lt;br /&gt;
|0x8049&lt;br /&gt;
|-&lt;br /&gt;
|snaptotargetentity&lt;br /&gt;
|0x80f2&lt;br /&gt;
|0x804a&lt;br /&gt;
|-&lt;br /&gt;
|cleartargetentity&lt;br /&gt;
|0x80f3&lt;br /&gt;
|0x804b&lt;br /&gt;
|-&lt;br /&gt;
|getturrettarget&lt;br /&gt;
|0x80f4&lt;br /&gt;
|0x804c&lt;br /&gt;
|-&lt;br /&gt;
|setplayerspread&lt;br /&gt;
|0x80f5&lt;br /&gt;
|0x804d&lt;br /&gt;
|-&lt;br /&gt;
|setaispread&lt;br /&gt;
|0x80f6&lt;br /&gt;
|0x804e&lt;br /&gt;
|-&lt;br /&gt;
|setsuppressiontime&lt;br /&gt;
|0x80f7&lt;br /&gt;
|0x804f&lt;br /&gt;
|-&lt;br /&gt;
|setconvergencetime&lt;br /&gt;
|0x8119&lt;br /&gt;
|0x8050&lt;br /&gt;
|-&lt;br /&gt;
|setconvergenceheightpercent&lt;br /&gt;
|0x811a&lt;br /&gt;
|0x8051&lt;br /&gt;
|-&lt;br /&gt;
|setturretteam&lt;br /&gt;
|0x811b&lt;br /&gt;
|0x8052&lt;br /&gt;
|-&lt;br /&gt;
|maketurretsolid&lt;br /&gt;
|0x811c&lt;br /&gt;
|0x8053&lt;br /&gt;
|-&lt;br /&gt;
|maketurretoperable&lt;br /&gt;
|0x811d&lt;br /&gt;
|0x8054&lt;br /&gt;
|-&lt;br /&gt;
|maketurretinoperable&lt;br /&gt;
|0x811e&lt;br /&gt;
|0x8055&lt;br /&gt;
|-&lt;br /&gt;
|setturretaccuracy&lt;br /&gt;
|0x813a&lt;br /&gt;
|0x8056&lt;br /&gt;
|-&lt;br /&gt;
|setrightarc&lt;br /&gt;
|0x813b&lt;br /&gt;
|0x8057&lt;br /&gt;
|-&lt;br /&gt;
|setleftarc&lt;br /&gt;
|0x813c&lt;br /&gt;
|0x8058&lt;br /&gt;
|-&lt;br /&gt;
|settoparc&lt;br /&gt;
|0x813d&lt;br /&gt;
|0x8059&lt;br /&gt;
|-&lt;br /&gt;
|setbottomarc&lt;br /&gt;
|0x813e&lt;br /&gt;
|0x805a&lt;br /&gt;
|-&lt;br /&gt;
|setautorotationdelay&lt;br /&gt;
|0x813f&lt;br /&gt;
|0x805b&lt;br /&gt;
|-&lt;br /&gt;
|setdefaultdroppitch&lt;br /&gt;
|0x8140&lt;br /&gt;
|0x805c&lt;br /&gt;
|-&lt;br /&gt;
|restoredefaultdroppitch&lt;br /&gt;
|0x8141&lt;br /&gt;
|0x805d&lt;br /&gt;
|-&lt;br /&gt;
|turretfiredisable&lt;br /&gt;
|0x8142&lt;br /&gt;
|0x805e&lt;br /&gt;
|-&lt;br /&gt;
|turretfireenable&lt;br /&gt;
|0x8161&lt;br /&gt;
|0x805f&lt;br /&gt;
|-&lt;br /&gt;
|setturretmodechangewait&lt;br /&gt;
|0x8162&lt;br /&gt;
|0x8060&lt;br /&gt;
|-&lt;br /&gt;
|usetriggerrequirelookat&lt;br /&gt;
|0x8163&lt;br /&gt;
|0x8061&lt;br /&gt;
|-&lt;br /&gt;
|getstance&lt;br /&gt;
|0x8164&lt;br /&gt;
|0x8062&lt;br /&gt;
|-&lt;br /&gt;
|setstance&lt;br /&gt;
|0x8165&lt;br /&gt;
|0x8063&lt;br /&gt;
|-&lt;br /&gt;
|itemweaponsetammo&lt;br /&gt;
|0x8166&lt;br /&gt;
|0x8064&lt;br /&gt;
|-&lt;br /&gt;
|getammocount&lt;br /&gt;
|0x8167&lt;br /&gt;
|0x8065&lt;br /&gt;
|-&lt;br /&gt;
|gettagorigin&lt;br /&gt;
|0x8168&lt;br /&gt;
|0x8066&lt;br /&gt;
|-&lt;br /&gt;
|gettagangles&lt;br /&gt;
|0x8169&lt;br /&gt;
|0x8067&lt;br /&gt;
|-&lt;br /&gt;
|shellshock&lt;br /&gt;
|0x816a&lt;br /&gt;
|0x8068&lt;br /&gt;
|-&lt;br /&gt;
|stunplayer&lt;br /&gt;
|0x816b&lt;br /&gt;
|0x8069&lt;br /&gt;
|-&lt;br /&gt;
|stopshellshock&lt;br /&gt;
|0x816c&lt;br /&gt;
|0x806a&lt;br /&gt;
|-&lt;br /&gt;
|fadeoutshellshock&lt;br /&gt;
|0x816d&lt;br /&gt;
|0x806b&lt;br /&gt;
|-&lt;br /&gt;
|setdepthoffield&lt;br /&gt;
|0x816e&lt;br /&gt;
|0x806c&lt;br /&gt;
|-&lt;br /&gt;
|setviewmodeldepthoffield&lt;br /&gt;
|0x816f&lt;br /&gt;
|0x806d&lt;br /&gt;
|-&lt;br /&gt;
|setmotionblurmovescale&lt;br /&gt;
|0x8170&lt;br /&gt;
|0x806e&lt;br /&gt;
|-&lt;br /&gt;
|setmotionblurturnscale&lt;br /&gt;
|0x8190&lt;br /&gt;
|0x806f&lt;br /&gt;
|-&lt;br /&gt;
|setmotionblurzoomscale&lt;br /&gt;
|0x8191&lt;br /&gt;
|0x8070&lt;br /&gt;
|-&lt;br /&gt;
|viewkick&lt;br /&gt;
|0x8192&lt;br /&gt;
|0x8071&lt;br /&gt;
|-&lt;br /&gt;
|localtoworldcoords&lt;br /&gt;
|0x8193&lt;br /&gt;
|0x8072&lt;br /&gt;
|-&lt;br /&gt;
|getentitynumber&lt;br /&gt;
|0x8194&lt;br /&gt;
|0x8073&lt;br /&gt;
|-&lt;br /&gt;
|getentityvelocity&lt;br /&gt;
|0x8195&lt;br /&gt;
|0x8074&lt;br /&gt;
|-&lt;br /&gt;
|enablegrenadetouchdamage&lt;br /&gt;
|0x8196&lt;br /&gt;
|0x8075&lt;br /&gt;
|-&lt;br /&gt;
|disablegrenadetouchdamage&lt;br /&gt;
|0x8197&lt;br /&gt;
|0x8076&lt;br /&gt;
|-&lt;br /&gt;
|enableaimassist&lt;br /&gt;
|0x8198&lt;br /&gt;
|0x8077&lt;br /&gt;
|-&lt;br /&gt;
|disableaimassist&lt;br /&gt;
|0x81b7&lt;br /&gt;
|0x8078&lt;br /&gt;
|-&lt;br /&gt;
|radiusdamage&lt;br /&gt;
|0x81b8&lt;br /&gt;
|0x8079&lt;br /&gt;
|-&lt;br /&gt;
|detonate&lt;br /&gt;
|0x81b9&lt;br /&gt;
|0x807a&lt;br /&gt;
|-&lt;br /&gt;
|damageconetrace&lt;br /&gt;
|0x81ba&lt;br /&gt;
|0x807b&lt;br /&gt;
|-&lt;br /&gt;
|sightconetrace&lt;br /&gt;
|0x81bb&lt;br /&gt;
|0x807c&lt;br /&gt;
|-&lt;br /&gt;
|settargetent&lt;br /&gt;
|0x81bc&lt;br /&gt;
|0x807d&lt;br /&gt;
|-&lt;br /&gt;
|settargetpos&lt;br /&gt;
|0x81bd&lt;br /&gt;
|0x807e&lt;br /&gt;
|-&lt;br /&gt;
|cleartarget&lt;br /&gt;
|0x81be&lt;br /&gt;
|0x807f&lt;br /&gt;
|-&lt;br /&gt;
|setflightmodedirect&lt;br /&gt;
|0x81bf&lt;br /&gt;
|0x8080&lt;br /&gt;
|-&lt;br /&gt;
|setflightmodetop&lt;br /&gt;
|0x81c0&lt;br /&gt;
|0x8081&lt;br /&gt;
|-&lt;br /&gt;
|getlightintensity&lt;br /&gt;
|0x81c1&lt;br /&gt;
|0x8082&lt;br /&gt;
|-&lt;br /&gt;
|setlightintensity&lt;br /&gt;
|0x81c2&lt;br /&gt;
|0x8083&lt;br /&gt;
|-&lt;br /&gt;
|isragdoll&lt;br /&gt;
|0x81c3&lt;br /&gt;
|0x8084&lt;br /&gt;
|-&lt;br /&gt;
|setmovespeedscale&lt;br /&gt;
|0x81c4&lt;br /&gt;
|0x8085&lt;br /&gt;
|-&lt;br /&gt;
|cameralinkto&lt;br /&gt;
|0x81c5&lt;br /&gt;
|0x8086&lt;br /&gt;
|-&lt;br /&gt;
|cameraunlink&lt;br /&gt;
|0x81c6&lt;br /&gt;
|0x8087&lt;br /&gt;
|-&lt;br /&gt;
|controlslinkto&lt;br /&gt;
|0x81e3&lt;br /&gt;
|0x8088&lt;br /&gt;
|-&lt;br /&gt;
|controlsunlink&lt;br /&gt;
|0x81e4&lt;br /&gt;
|0x8089&lt;br /&gt;
|-&lt;br /&gt;
|makevehiclesolidcapsule&lt;br /&gt;
|0x81e5&lt;br /&gt;
|0x808a&lt;br /&gt;
|-&lt;br /&gt;
|makevehiclesolidsphere&lt;br /&gt;
|0x81e6&lt;br /&gt;
|0x808b&lt;br /&gt;
|-&lt;br /&gt;
|remotecontrolvehicle&lt;br /&gt;
|0x81e8&lt;br /&gt;
|0x808d&lt;br /&gt;
|-&lt;br /&gt;
|remotecontrolvehicleoff&lt;br /&gt;
|0x81e9&lt;br /&gt;
|0x808e&lt;br /&gt;
|-&lt;br /&gt;
|isfiringvehicleturret&lt;br /&gt;
|0x81ea&lt;br /&gt;
|0x808f&lt;br /&gt;
|-&lt;br /&gt;
|drivevehicleandcontrolturret&lt;br /&gt;
|0x81eb&lt;br /&gt;
|0x8090&lt;br /&gt;
|-&lt;br /&gt;
|drivevehicleandcontrolturretoff&lt;br /&gt;
|0x81ec&lt;br /&gt;
|0x8091&lt;br /&gt;
|-&lt;br /&gt;
|getplayersetting&lt;br /&gt;
|0x81ed&lt;br /&gt;
|0x8092&lt;br /&gt;
|-&lt;br /&gt;
|getlocalplayerprofiledata&lt;br /&gt;
|0x81ee&lt;br /&gt;
|0x8093&lt;br /&gt;
|-&lt;br /&gt;
|setlocalplayerprofiledata&lt;br /&gt;
|0x81ef&lt;br /&gt;
|0x8094&lt;br /&gt;
|-&lt;br /&gt;
|remotecamerasoundscapeon&lt;br /&gt;
|0x81f0&lt;br /&gt;
|0x8095&lt;br /&gt;
|-&lt;br /&gt;
|remotecamerasoundscapeoff&lt;br /&gt;
|0x81f1&lt;br /&gt;
|0x8096&lt;br /&gt;
|-&lt;br /&gt;
|radarjamon&lt;br /&gt;
|0x81f2&lt;br /&gt;
|0x8097&lt;br /&gt;
|-&lt;br /&gt;
|radarjamoff&lt;br /&gt;
|0x81f3&lt;br /&gt;
|0x8098&lt;br /&gt;
|-&lt;br /&gt;
|setmotiontrackervisible&lt;br /&gt;
|0x81f4&lt;br /&gt;
|0x8099&lt;br /&gt;
|-&lt;br /&gt;
|getmotiontrackervisible&lt;br /&gt;
|0x81f5&lt;br /&gt;
|0x809a&lt;br /&gt;
|-&lt;br /&gt;
|circle&lt;br /&gt;
|0x81f6&lt;br /&gt;
|0x809b&lt;br /&gt;
|-&lt;br /&gt;
|getpointinbounds&lt;br /&gt;
|0x81f7&lt;br /&gt;
|0x809c&lt;br /&gt;
|-&lt;br /&gt;
|transfermarkstonewscriptmodel&lt;br /&gt;
|0x81f8&lt;br /&gt;
|0x809d&lt;br /&gt;
|-&lt;br /&gt;
|setwatersheeting&lt;br /&gt;
|0x81f9&lt;br /&gt;
|0x809e&lt;br /&gt;
|-&lt;br /&gt;
|setweaponhudiconoverride&lt;br /&gt;
|0x81fa&lt;br /&gt;
|0x809f&lt;br /&gt;
|-&lt;br /&gt;
|getweaponhudiconoverride&lt;br /&gt;
|0x81fb&lt;br /&gt;
|0x80a0&lt;br /&gt;
|-&lt;br /&gt;
|setempjammed&lt;br /&gt;
|0x81fc&lt;br /&gt;
|0x80a1&lt;br /&gt;
|-&lt;br /&gt;
|playersetexpfog&lt;br /&gt;
|0x81fd&lt;br /&gt;
|0x80a2&lt;br /&gt;
|-&lt;br /&gt;
|isitemunlocked&lt;br /&gt;
|0x81fe&lt;br /&gt;
|0x80a3&lt;br /&gt;
|-&lt;br /&gt;
|getplayerdata&lt;br /&gt;
|0x81ff&lt;br /&gt;
|0x80a4&lt;br /&gt;
|-&lt;br /&gt;
|setplayerdata&lt;br /&gt;
|0x821a&lt;br /&gt;
|0x80a5&lt;br /&gt;
|-&lt;br /&gt;
|trackerupdate&lt;br /&gt;
|N/A&lt;br /&gt;
|0x80a6&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- player 1 --&amp;gt;&lt;br /&gt;
|pingplayer&lt;br /&gt;
|0x821c&lt;br /&gt;
|0x80a7&lt;br /&gt;
|-&lt;br /&gt;
|buttonpressed&lt;br /&gt;
|0x821d&lt;br /&gt;
|0x80a8&lt;br /&gt;
|-&lt;br /&gt;
|sayall&lt;br /&gt;
|0x821e&lt;br /&gt;
|0x80a9&lt;br /&gt;
|-&lt;br /&gt;
|sayteam&lt;br /&gt;
|0x821f&lt;br /&gt;
|0x80aa&lt;br /&gt;
|-&lt;br /&gt;
|showscoreboard&lt;br /&gt;
|0x8220&lt;br /&gt;
|0x80ab&lt;br /&gt;
|-&lt;br /&gt;
|setspawnweapon&lt;br /&gt;
|0x8221&lt;br /&gt;
|0x80ac&lt;br /&gt;
|-&lt;br /&gt;
|dropitem&lt;br /&gt;
|0x8222&lt;br /&gt;
|0x80ad&lt;br /&gt;
|-&lt;br /&gt;
|dropscavengerbag&lt;br /&gt;
|0x8223&lt;br /&gt;
|0x80ae&lt;br /&gt;
|-&lt;br /&gt;
|finishplayerdamage&lt;br /&gt;
|0x823c&lt;br /&gt;
|0x80af&lt;br /&gt;
|-&lt;br /&gt;
|suicide&lt;br /&gt;
|0x823d&lt;br /&gt;
|0x80b0&lt;br /&gt;
|-&lt;br /&gt;
|closeingamemenu&lt;br /&gt;
|0x823e&lt;br /&gt;
|0x80b1&lt;br /&gt;
|-&lt;br /&gt;
|iprintln&lt;br /&gt;
|0x823f&lt;br /&gt;
|0x80b2&lt;br /&gt;
|-&lt;br /&gt;
|iprintlnbold&lt;br /&gt;
|0x8240&lt;br /&gt;
|0x80b3&lt;br /&gt;
|-&lt;br /&gt;
|spawn&lt;br /&gt;
|0x8241&lt;br /&gt;
|0x80b4&lt;br /&gt;
|-&lt;br /&gt;
|setentertime&lt;br /&gt;
|0x8242&lt;br /&gt;
|0x80b5&lt;br /&gt;
|-&lt;br /&gt;
|cloneplayer&lt;br /&gt;
|0x8243&lt;br /&gt;
|0x80b6&lt;br /&gt;
|-&lt;br /&gt;
|istalking&lt;br /&gt;
|0x8244&lt;br /&gt;
|0x80b7&lt;br /&gt;
|-&lt;br /&gt;
|allowspectateteam&lt;br /&gt;
|0x8245&lt;br /&gt;
|0x80b8&lt;br /&gt;
|-&lt;br /&gt;
|getguid&lt;br /&gt;
|0x8246&lt;br /&gt;
|0x80b9&lt;br /&gt;
|-&lt;br /&gt;
|getxuid&lt;br /&gt;
|0x8266&lt;br /&gt;
|0x80ba&lt;br /&gt;
|-&lt;br /&gt;
|ishost&lt;br /&gt;
|0x8267&lt;br /&gt;
|0x80bb&lt;br /&gt;
|-&lt;br /&gt;
|getspectatingplayer&lt;br /&gt;
|0x8268&lt;br /&gt;
|0x80bc&lt;br /&gt;
|-&lt;br /&gt;
|predictstreampos&lt;br /&gt;
|0x8269&lt;br /&gt;
|0x80bd&lt;br /&gt;
|-&lt;br /&gt;
|updatescores&lt;br /&gt;
|0x826a&lt;br /&gt;
|0x80be&lt;br /&gt;
|-&lt;br /&gt;
|updatedmscores&lt;br /&gt;
|0x826b&lt;br /&gt;
|0x80bf&lt;br /&gt;
|-&lt;br /&gt;
|setrank&lt;br /&gt;
|0x826c&lt;br /&gt;
|0x80c0&lt;br /&gt;
|-&lt;br /&gt;
|setcardtitle&lt;br /&gt;
|0x826d&lt;br /&gt;
|0x80c1&lt;br /&gt;
|-&lt;br /&gt;
|setcardicon&lt;br /&gt;
|0x828c&lt;br /&gt;
|0x80c2&lt;br /&gt;
|-&lt;br /&gt;
|setcardnameplate&lt;br /&gt;
|0x828d&lt;br /&gt;
|0x80c3&lt;br /&gt;
|-&lt;br /&gt;
|setcarddisplayslot&lt;br /&gt;
|0x828e&lt;br /&gt;
|0x80c4&lt;br /&gt;
|-&lt;br /&gt;
|kc_regweaponforfxremoval&lt;br /&gt;
|0x828f&lt;br /&gt;
|0x80c5&lt;br /&gt;
|-&lt;br /&gt;
|laststandrevive&lt;br /&gt;
|0x8290&lt;br /&gt;
|0x80c6&lt;br /&gt;
|-&lt;br /&gt;
|setspectatedefaults&lt;br /&gt;
|0x8291&lt;br /&gt;
|0x80c7&lt;br /&gt;
|-&lt;br /&gt;
|getthirdpersoncrosshairoffset&lt;br /&gt;
|0x8292&lt;br /&gt;
|0x80c8&lt;br /&gt;
|-&lt;br /&gt;
|disableweaponpickup&lt;br /&gt;
|0x8293&lt;br /&gt;
|0x80c9&lt;br /&gt;
|-&lt;br /&gt;
|enableweaponpickup&lt;br /&gt;
|0x8294&lt;br /&gt;
|0x80ca&lt;br /&gt;
|-&lt;br /&gt;
|issplitscreenplayer&lt;br /&gt;
|N/A&lt;br /&gt;
|0x80cb&lt;br /&gt;
|-&lt;br /&gt;
|issplitscreenplayerprimary&lt;br /&gt;
|N/A&lt;br /&gt;
|0x80cc&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- player 2 --&amp;gt;&lt;br /&gt;
|getviewmodel&lt;br /&gt;
|0x82b1&lt;br /&gt;
|0x80cd&lt;br /&gt;
|-&lt;br /&gt;
|fragbuttonpressed&lt;br /&gt;
|0x82b2&lt;br /&gt;
|0x80ce&lt;br /&gt;
|-&lt;br /&gt;
|secondaryoffhandbuttonpressed&lt;br /&gt;
|0x82b3&lt;br /&gt;
|0x80cf&lt;br /&gt;
|-&lt;br /&gt;
|getcurrentweaponclipammo&lt;br /&gt;
|0x82b4&lt;br /&gt;
|0x80d0&lt;br /&gt;
|-&lt;br /&gt;
|setvelocity&lt;br /&gt;
|0x82b5&lt;br /&gt;
|0x80d1&lt;br /&gt;
|-&lt;br /&gt;
|getplayerviewheight&lt;br /&gt;
|0x82b6&lt;br /&gt;
|0x80d2&lt;br /&gt;
|-&lt;br /&gt;
|enablemousesteer&lt;br /&gt;
|0x8309&lt;br /&gt;
|0x8309&lt;br /&gt;
|-&lt;br /&gt;
|getnormalizedmovement&lt;br /&gt;
|0x82b7&lt;br /&gt;
|0x80d3&lt;br /&gt;
|-&lt;br /&gt;
|getnormalizedcameramovement&lt;br /&gt;
|0x82ce&lt;br /&gt;
|0x80d4&lt;br /&gt;
|-&lt;br /&gt;
|giveweapon&lt;br /&gt;
|0x82cf&lt;br /&gt;
|0x80d5&lt;br /&gt;
|-&lt;br /&gt;
|takeweapon&lt;br /&gt;
|0x82d0&lt;br /&gt;
|0x80d6&lt;br /&gt;
|-&lt;br /&gt;
|takeallweapons&lt;br /&gt;
|0x82d1&lt;br /&gt;
|0x80d7&lt;br /&gt;
|-&lt;br /&gt;
|getcurrentweapon&lt;br /&gt;
|0x82d2&lt;br /&gt;
|0x80d8&lt;br /&gt;
|-&lt;br /&gt;
|getcurrentprimaryweapon&lt;br /&gt;
|0x82d3&lt;br /&gt;
|0x80d9&lt;br /&gt;
|-&lt;br /&gt;
|getcurrentoffhand&lt;br /&gt;
|0x82d4&lt;br /&gt;
|0x80da&lt;br /&gt;
|-&lt;br /&gt;
|hasweapon&lt;br /&gt;
|0x82d5&lt;br /&gt;
|0x80db&lt;br /&gt;
|-&lt;br /&gt;
|switchtoweapon&lt;br /&gt;
|0x82d6&lt;br /&gt;
|0x80dc&lt;br /&gt;
|-&lt;br /&gt;
|switchtoweaponimmediate&lt;br /&gt;
|0x82d7&lt;br /&gt;
|0x80dd&lt;br /&gt;
|-&lt;br /&gt;
|switchtooffhand&lt;br /&gt;
|0x82d8&lt;br /&gt;
|0x80de&lt;br /&gt;
|-&lt;br /&gt;
|givestartammo&lt;br /&gt;
|0x82f2&lt;br /&gt;
|0x80df&lt;br /&gt;
|-&lt;br /&gt;
|givemaxammo&lt;br /&gt;
|0x82f3&lt;br /&gt;
|0x80e0&lt;br /&gt;
|-&lt;br /&gt;
|getfractionstartammo&lt;br /&gt;
|0x82f4&lt;br /&gt;
|0x80e1&lt;br /&gt;
|-&lt;br /&gt;
|getfractionmaxammo&lt;br /&gt;
|0x82f5&lt;br /&gt;
|0x80e2&lt;br /&gt;
|-&lt;br /&gt;
|isdualwielding&lt;br /&gt;
|0x82f6&lt;br /&gt;
|0x80e3&lt;br /&gt;
|-&lt;br /&gt;
|isreloading&lt;br /&gt;
|0x82f7&lt;br /&gt;
|0x80e4&lt;br /&gt;
|-&lt;br /&gt;
|isswitchingweapon&lt;br /&gt;
|0x82f8&lt;br /&gt;
|0x80e5&lt;br /&gt;
|-&lt;br /&gt;
|setorigin&lt;br /&gt;
|0x82f9&lt;br /&gt;
|0x80e6&lt;br /&gt;
|-&lt;br /&gt;
|getvelocity&lt;br /&gt;
|0x82fa&lt;br /&gt;
|0x80e7&lt;br /&gt;
|-&lt;br /&gt;
|setplayerangles&lt;br /&gt;
|0x82fb&lt;br /&gt;
|0x80e8&lt;br /&gt;
|-&lt;br /&gt;
|getplayerangles&lt;br /&gt;
|0x82fc&lt;br /&gt;
|0x80e9&lt;br /&gt;
|-&lt;br /&gt;
|usebuttonpressed&lt;br /&gt;
|0x82fd&lt;br /&gt;
|0x80ea&lt;br /&gt;
|-&lt;br /&gt;
|attackbuttonpressed&lt;br /&gt;
|0x82fe&lt;br /&gt;
|0x80eb&lt;br /&gt;
|-&lt;br /&gt;
|adsbuttonpressed&lt;br /&gt;
|0x82ff&lt;br /&gt;
|0x80ec&lt;br /&gt;
|-&lt;br /&gt;
|meleebuttonpressed&lt;br /&gt;
|0x8300&lt;br /&gt;
|0x80ed&lt;br /&gt;
|-&lt;br /&gt;
|playerads&lt;br /&gt;
|0x8301&lt;br /&gt;
|0x80ee&lt;br /&gt;
|-&lt;br /&gt;
|isonground&lt;br /&gt;
|0x8302&lt;br /&gt;
|0x80ef&lt;br /&gt;
|-&lt;br /&gt;
|isusingturret&lt;br /&gt;
|0x8303&lt;br /&gt;
|0x80f0&lt;br /&gt;
|-&lt;br /&gt;
|setviewmodel&lt;br /&gt;
|0x8304&lt;br /&gt;
|0x80f1&lt;br /&gt;
|-&lt;br /&gt;
|setoffhandprimaryclass&lt;br /&gt;
|0x8305&lt;br /&gt;
|0x80f2&lt;br /&gt;
|-&lt;br /&gt;
|getoffhandprimaryclass&lt;br /&gt;
|0x8306&lt;br /&gt;
|0x80f3&lt;br /&gt;
|-&lt;br /&gt;
|setoffhandsecondaryclass&lt;br /&gt;
|0x82d9&lt;br /&gt;
|0x80f4&lt;br /&gt;
|-&lt;br /&gt;
|getoffhandsecondaryclass&lt;br /&gt;
|0x82da&lt;br /&gt;
|0x80f5&lt;br /&gt;
|-&lt;br /&gt;
|beginlocationselection&lt;br /&gt;
|0x82db&lt;br /&gt;
|0x80f6&lt;br /&gt;
|-&lt;br /&gt;
|endlocationselection&lt;br /&gt;
|0x82dc&lt;br /&gt;
|0x80f7&lt;br /&gt;
|-&lt;br /&gt;
|disableweapons&lt;br /&gt;
|0x82dd&lt;br /&gt;
|0x80f8&lt;br /&gt;
|-&lt;br /&gt;
|enableweapons&lt;br /&gt;
|0x82de&lt;br /&gt;
|0x80f9&lt;br /&gt;
|-&lt;br /&gt;
|disableoffhandweapons&lt;br /&gt;
|0x82df&lt;br /&gt;
|0x80fa&lt;br /&gt;
|-&lt;br /&gt;
|enableoffhandweapons&lt;br /&gt;
|0x82e0&lt;br /&gt;
|0x80fb&lt;br /&gt;
|-&lt;br /&gt;
|disableweaponswitch&lt;br /&gt;
|0x82e1&lt;br /&gt;
|0x80fc&lt;br /&gt;
|-&lt;br /&gt;
|enableweaponswitch&lt;br /&gt;
|0x82e2&lt;br /&gt;
|0x80fd&lt;br /&gt;
|-&lt;br /&gt;
|openpopupmenu&lt;br /&gt;
|0x82e3&lt;br /&gt;
|0x80fe&lt;br /&gt;
|-&lt;br /&gt;
|openpopupmenunomouse&lt;br /&gt;
|0x82e4&lt;br /&gt;
|0x80ff&lt;br /&gt;
|-&lt;br /&gt;
|closepopupmenu&lt;br /&gt;
|0x82e5&lt;br /&gt;
|0x8100&lt;br /&gt;
|-&lt;br /&gt;
|openmenu&lt;br /&gt;
|0x82e6&lt;br /&gt;
|0x8101&lt;br /&gt;
|-&lt;br /&gt;
|closemenu&lt;br /&gt;
|0x82e7&lt;br /&gt;
|0x8102&lt;br /&gt;
|-&lt;br /&gt;
|freezecontrols&lt;br /&gt;
|0x82e9&lt;br /&gt;
|0x8104&lt;br /&gt;
|-&lt;br /&gt;
|disableusability&lt;br /&gt;
|0x82ea&lt;br /&gt;
|0x8105&lt;br /&gt;
|-&lt;br /&gt;
|enableusability&lt;br /&gt;
|0x82eb&lt;br /&gt;
|0x8106&lt;br /&gt;
|-&lt;br /&gt;
|setwhizbyspreads&lt;br /&gt;
|0x82ec&lt;br /&gt;
|0x8107&lt;br /&gt;
|-&lt;br /&gt;
|setwhizbyradii&lt;br /&gt;
|0x82ed&lt;br /&gt;
|0x8108&lt;br /&gt;
|-&lt;br /&gt;
|setreverb&lt;br /&gt;
|0x82ee&lt;br /&gt;
|0x8109&lt;br /&gt;
|-&lt;br /&gt;
|deactivatereverb&lt;br /&gt;
|0x82ef&lt;br /&gt;
|0x810a&lt;br /&gt;
|-&lt;br /&gt;
|setvolmod&lt;br /&gt;
|0x82f0&lt;br /&gt;
|0x810b&lt;br /&gt;
|-&lt;br /&gt;
|setchannelvolume&lt;br /&gt;
|0x82f1&lt;br /&gt;
|0x810c&lt;br /&gt;
|-&lt;br /&gt;
|setchannelvolumes&lt;br /&gt;
|0x82b8&lt;br /&gt;
|0x810d&lt;br /&gt;
|-&lt;br /&gt;
|deactivatechannelvolumes&lt;br /&gt;
|0x82b9&lt;br /&gt;
|0x810e&lt;br /&gt;
|-&lt;br /&gt;
|playlocalsound&lt;br /&gt;
|0x82ba&lt;br /&gt;
|0x810f&lt;br /&gt;
|-&lt;br /&gt;
|stoplocalsound&lt;br /&gt;
|0x82bb&lt;br /&gt;
|0x8110&lt;br /&gt;
|-&lt;br /&gt;
|setweaponammoclip&lt;br /&gt;
|0x82bc&lt;br /&gt;
|0x8111&lt;br /&gt;
|-&lt;br /&gt;
|setweaponammostock&lt;br /&gt;
|0x82bd&lt;br /&gt;
|0x8112&lt;br /&gt;
|-&lt;br /&gt;
|getweaponammoclip&lt;br /&gt;
|0x82be&lt;br /&gt;
|0x8113&lt;br /&gt;
|-&lt;br /&gt;
|getweaponammostock&lt;br /&gt;
|0x82bf&lt;br /&gt;
|0x8114&lt;br /&gt;
|-&lt;br /&gt;
|anyammoforweaponmodes&lt;br /&gt;
|0x82c0&lt;br /&gt;
|0x8115&lt;br /&gt;
|-&lt;br /&gt;
|setclientdvar&lt;br /&gt;
|0x82c1&lt;br /&gt;
|0x8116&lt;br /&gt;
|-&lt;br /&gt;
|setclientdvars&lt;br /&gt;
|0x82c2&lt;br /&gt;
|0x8117&lt;br /&gt;
|-&lt;br /&gt;
|allowads&lt;br /&gt;
|0x82c3&lt;br /&gt;
|0x8118&lt;br /&gt;
|-&lt;br /&gt;
|allowjump&lt;br /&gt;
|0x82c4&lt;br /&gt;
|0x8119&lt;br /&gt;
|-&lt;br /&gt;
|allowsprint&lt;br /&gt;
|0x82c5&lt;br /&gt;
|0x811a&lt;br /&gt;
|-&lt;br /&gt;
|setspreadoverride&lt;br /&gt;
|0x82c6&lt;br /&gt;
|0x811b&lt;br /&gt;
|-&lt;br /&gt;
|resetspreadoverride&lt;br /&gt;
|0x82c7&lt;br /&gt;
|0x811c&lt;br /&gt;
|-&lt;br /&gt;
|setaimspreadmovementscale&lt;br /&gt;
|0x82c8&lt;br /&gt;
|0x811d&lt;br /&gt;
|-&lt;br /&gt;
|setactionslot&lt;br /&gt;
|0x82c9&lt;br /&gt;
|0x811e&lt;br /&gt;
|-&lt;br /&gt;
|setviewkickscale&lt;br /&gt;
|0x82ca&lt;br /&gt;
|0x811f&lt;br /&gt;
|-&lt;br /&gt;
|getviewkickscale&lt;br /&gt;
|0x82cb&lt;br /&gt;
|0x8120&lt;br /&gt;
|-&lt;br /&gt;
|getweaponslistall&lt;br /&gt;
|0x82cc&lt;br /&gt;
|0x8121&lt;br /&gt;
|-&lt;br /&gt;
|getweaponslistprimaries&lt;br /&gt;
|0x82cd&lt;br /&gt;
|0x8122&lt;br /&gt;
|-&lt;br /&gt;
|getweaponslistoffhands&lt;br /&gt;
|0x8296&lt;br /&gt;
|0x8123&lt;br /&gt;
|-&lt;br /&gt;
|getweaponslistitems&lt;br /&gt;
|0x8297&lt;br /&gt;
|0x8124&lt;br /&gt;
|-&lt;br /&gt;
|getweaponslistexclusives&lt;br /&gt;
|0x8298&lt;br /&gt;
|0x8125&lt;br /&gt;
|-&lt;br /&gt;
|getweaponslist&lt;br /&gt;
|0x8299&lt;br /&gt;
|0x8126&lt;br /&gt;
|-&lt;br /&gt;
|canplayerplacesentry&lt;br /&gt;
|0x829a&lt;br /&gt;
|0x8127&lt;br /&gt;
|-&lt;br /&gt;
|canplayerplacetank&lt;br /&gt;
|0x829b&lt;br /&gt;
|0x8128&lt;br /&gt;
|-&lt;br /&gt;
|visionsetnakedforplayer&lt;br /&gt;
|0x829c&lt;br /&gt;
|0x8129&lt;br /&gt;
|-&lt;br /&gt;
|visionsetnightforplayer&lt;br /&gt;
|0x829d&lt;br /&gt;
|0x812a&lt;br /&gt;
|-&lt;br /&gt;
|visionsetmissilecamforplayer&lt;br /&gt;
|0x829e&lt;br /&gt;
|0x812b&lt;br /&gt;
|-&lt;br /&gt;
|visionsetthermalforplayer&lt;br /&gt;
|0x829f&lt;br /&gt;
|0x812c&lt;br /&gt;
|-&lt;br /&gt;
|visionsetpainforplayer&lt;br /&gt;
|0x82a0&lt;br /&gt;
|0x812d&lt;br /&gt;
|-&lt;br /&gt;
|setblurforplayer&lt;br /&gt;
|0x82a1&lt;br /&gt;
|0x812e&lt;br /&gt;
|-&lt;br /&gt;
|getplayerweaponmodel&lt;br /&gt;
|0x82a2&lt;br /&gt;
|0x812f&lt;br /&gt;
|-&lt;br /&gt;
|getplayerknifemodel&lt;br /&gt;
|0x82a3&lt;br /&gt;
|0x8130&lt;br /&gt;
|-&lt;br /&gt;
|updateplayermodelwithweapons&lt;br /&gt;
|0x82a4&lt;br /&gt;
|0x8131&lt;br /&gt;
|-&lt;br /&gt;
|notifyonplayercommand&lt;br /&gt;
|0x82a5&lt;br /&gt;
|0x8132&lt;br /&gt;
|-&lt;br /&gt;
|canmantle&lt;br /&gt;
|0x82a6&lt;br /&gt;
|0x8133&lt;br /&gt;
|-&lt;br /&gt;
|forcemantle&lt;br /&gt;
|0x82a7&lt;br /&gt;
|0x8134&lt;br /&gt;
|-&lt;br /&gt;
|ismantling&lt;br /&gt;
|0x82a8&lt;br /&gt;
|0x8135&lt;br /&gt;
|-&lt;br /&gt;
|playfx&lt;br /&gt;
|0x82a9&lt;br /&gt;
|0x8136&lt;br /&gt;
|-&lt;br /&gt;
|recoilscaleon&lt;br /&gt;
|0x82aa&lt;br /&gt;
|0x8137&lt;br /&gt;
|-&lt;br /&gt;
|recoilscaleoff&lt;br /&gt;
|0x82ab&lt;br /&gt;
|0x8138&lt;br /&gt;
|-&lt;br /&gt;
|weaponlockstart&lt;br /&gt;
|0x82ac&lt;br /&gt;
|0x8139&lt;br /&gt;
|-&lt;br /&gt;
|weaponlockfinalize&lt;br /&gt;
|0x82ad&lt;br /&gt;
|0x813a&lt;br /&gt;
|-&lt;br /&gt;
|weaponlockfree&lt;br /&gt;
|0x82ae&lt;br /&gt;
|0x813b&lt;br /&gt;
|-&lt;br /&gt;
|weaponlocktargettooclose&lt;br /&gt;
|0x82af&lt;br /&gt;
|0x813c&lt;br /&gt;
|-&lt;br /&gt;
|weaponlocknoclearance&lt;br /&gt;
|0x826e&lt;br /&gt;
|0x813d&lt;br /&gt;
|-&lt;br /&gt;
|visionsyncwithplayer&lt;br /&gt;
|0x826f&lt;br /&gt;
|0x813e&lt;br /&gt;
|-&lt;br /&gt;
|showhudsplash&lt;br /&gt;
|0x8270&lt;br /&gt;
|0x813f&lt;br /&gt;
|-&lt;br /&gt;
|setperk&lt;br /&gt;
|0x8271&lt;br /&gt;
|0x8140&lt;br /&gt;
|-&lt;br /&gt;
|hasperk&lt;br /&gt;
|0x8272&lt;br /&gt;
|0x8141&lt;br /&gt;
|-&lt;br /&gt;
|clearperks&lt;br /&gt;
|0x8273&lt;br /&gt;
|0x8142&lt;br /&gt;
|-&lt;br /&gt;
|unsetperk&lt;br /&gt;
|0x8274&lt;br /&gt;
|0x8143&lt;br /&gt;
|-&lt;br /&gt;
|noclip&lt;br /&gt;
|0x8275&lt;br /&gt;
|0x8144&lt;br /&gt;
|-&lt;br /&gt;
|ufo&lt;br /&gt;
|0x8276&lt;br /&gt;
|0x8145&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- script ent --&amp;gt;&lt;br /&gt;
|moveto&lt;br /&gt;
|0x8277&lt;br /&gt;
|0x8146&lt;br /&gt;
|-&lt;br /&gt;
|movex&lt;br /&gt;
|0x8278&lt;br /&gt;
|0x8147&lt;br /&gt;
|-&lt;br /&gt;
|movey&lt;br /&gt;
|0x8279&lt;br /&gt;
|0x8148&lt;br /&gt;
|-&lt;br /&gt;
|movez&lt;br /&gt;
|0x827A&lt;br /&gt;
|0x8149&lt;br /&gt;
|-&lt;br /&gt;
|movegravity&lt;br /&gt;
|0x827B&lt;br /&gt;
|0x814A&lt;br /&gt;
|-&lt;br /&gt;
|moveslide&lt;br /&gt;
|0x827C&lt;br /&gt;
|0x814B&lt;br /&gt;
|-&lt;br /&gt;
|stopmoveslide&lt;br /&gt;
|0x827D&lt;br /&gt;
|0x814C&lt;br /&gt;
|-&lt;br /&gt;
|rotateto&lt;br /&gt;
|0x827E&lt;br /&gt;
|0x814D&lt;br /&gt;
|-&lt;br /&gt;
|rotatepitch&lt;br /&gt;
|0x827F&lt;br /&gt;
|0x814E&lt;br /&gt;
|-&lt;br /&gt;
|rotateyaw&lt;br /&gt;
|0x8280&lt;br /&gt;
|0x814F&lt;br /&gt;
|-&lt;br /&gt;
|rotateroll&lt;br /&gt;
|0x8281&lt;br /&gt;
|0x8150&lt;br /&gt;
|-&lt;br /&gt;
|addpitch&lt;br /&gt;
|0x8282&lt;br /&gt;
|0x8151&lt;br /&gt;
|-&lt;br /&gt;
|addyaw&lt;br /&gt;
|0x8283&lt;br /&gt;
|0x8152&lt;br /&gt;
|-&lt;br /&gt;
|addroll&lt;br /&gt;
|0x8284&lt;br /&gt;
|0x8153&lt;br /&gt;
|-&lt;br /&gt;
|vibrate&lt;br /&gt;
|0x8285&lt;br /&gt;
|0x8154&lt;br /&gt;
|-&lt;br /&gt;
|rotatevelocity&lt;br /&gt;
|0x8286&lt;br /&gt;
|0x8155&lt;br /&gt;
|-&lt;br /&gt;
|solid&lt;br /&gt;
|0x8287&lt;br /&gt;
|0x8156&lt;br /&gt;
|-&lt;br /&gt;
|notsolid&lt;br /&gt;
|0x8288&lt;br /&gt;
|0x8157&lt;br /&gt;
|-&lt;br /&gt;
|setcandamage&lt;br /&gt;
|0x8289&lt;br /&gt;
|0x8158&lt;br /&gt;
|-&lt;br /&gt;
|setcanradiusdamage&lt;br /&gt;
|0x828A&lt;br /&gt;
|0x8159&lt;br /&gt;
|-&lt;br /&gt;
|physicslaunchclient&lt;br /&gt;
|0x828B&lt;br /&gt;
|0x815A&lt;br /&gt;
|-&lt;br /&gt;
|physicslaunchserver&lt;br /&gt;
|0x8247&lt;br /&gt;
|0x815B&lt;br /&gt;
|-&lt;br /&gt;
|physicslaunchserveritem&lt;br /&gt;
|0x8248&lt;br /&gt;
|0x815C&lt;br /&gt;
|-&lt;br /&gt;
|clonebrushmodeltoscriptmodel&lt;br /&gt;
|0x8249&lt;br /&gt;
|0x815D&lt;br /&gt;
|-&lt;br /&gt;
|scriptmodelplayanim&lt;br /&gt;
|0x824A&lt;br /&gt;
|0x815E&lt;br /&gt;
|-&lt;br /&gt;
|scriptmodelclearanim&lt;br /&gt;
|0x824B&lt;br /&gt;
|0x815F&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- vehicle --&amp;gt;&lt;br /&gt;
|vehicle_teleport&lt;br /&gt;
|0x824C&lt;br /&gt;
|0x8160&lt;br /&gt;
|-&lt;br /&gt;
|attachpath&lt;br /&gt;
|0x824D&lt;br /&gt;
|0x8161&lt;br /&gt;
|-&lt;br /&gt;
|getattachpos&lt;br /&gt;
|0x824E&lt;br /&gt;
|0x8162&lt;br /&gt;
|-&lt;br /&gt;
|startpath&lt;br /&gt;
|0x824F&lt;br /&gt;
|0x8163&lt;br /&gt;
|-&lt;br /&gt;
|setswitchnode&lt;br /&gt;
|0x8250&lt;br /&gt;
|0x8164&lt;br /&gt;
|-&lt;br /&gt;
|setwaitspeed&lt;br /&gt;
|0x8251&lt;br /&gt;
|0x8165&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_finishdamage&lt;br /&gt;
|0x8252&lt;br /&gt;
|0x8166&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_setspeed&lt;br /&gt;
|0x8253&lt;br /&gt;
|0x8167&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_setspeedimmediate&lt;br /&gt;
|0x8254&lt;br /&gt;
|0x8168&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_rotateyaw&lt;br /&gt;
|0x8255&lt;br /&gt;
|0x8169&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_getspeed&lt;br /&gt;
|0x8256&lt;br /&gt;
|0x816a&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_getvelocity&lt;br /&gt;
|0x8257&lt;br /&gt;
|0x816b&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_getbodyvelocity&lt;br /&gt;
|0x8258&lt;br /&gt;
|0x816c&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_getsteering&lt;br /&gt;
|0x8259&lt;br /&gt;
|0x816d&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_getthrottle&lt;br /&gt;
|0x825A&lt;br /&gt;
|0x816e&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_turnengineoff&lt;br /&gt;
|0x825B&lt;br /&gt;
|0x816f&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_turnengineon&lt;br /&gt;
|0x825C&lt;br /&gt;
|0x8170&lt;br /&gt;
|-&lt;br /&gt;
|getgoalspeedmph&lt;br /&gt;
|0x825D&lt;br /&gt;
|0x8171&lt;br /&gt;
|-&lt;br /&gt;
|setacceleration&lt;br /&gt;
|0x825E&lt;br /&gt;
|0x8172&lt;br /&gt;
|-&lt;br /&gt;
|setdeceleration&lt;br /&gt;
|0x825F&lt;br /&gt;
|0x8173&lt;br /&gt;
|-&lt;br /&gt;
|resumespeed&lt;br /&gt;
|0x8260&lt;br /&gt;
|0x8174&lt;br /&gt;
|-&lt;br /&gt;
|setyawspeed&lt;br /&gt;
|0x8261&lt;br /&gt;
|0x8175&lt;br /&gt;
|-&lt;br /&gt;
|setyawspeedbyname&lt;br /&gt;
|0x8262&lt;br /&gt;
|0x8176&lt;br /&gt;
|-&lt;br /&gt;
|setmaxpitchroll&lt;br /&gt;
|0x8263&lt;br /&gt;
|0x8177&lt;br /&gt;
|-&lt;br /&gt;
|setairresistance&lt;br /&gt;
|0x8264&lt;br /&gt;
|0x8178&lt;br /&gt;
|-&lt;br /&gt;
|setturningability&lt;br /&gt;
|0x8265&lt;br /&gt;
|0x8179&lt;br /&gt;
|-&lt;br /&gt;
|setjitterparams&lt;br /&gt;
|0x8224&lt;br /&gt;
|0x817a&lt;br /&gt;
|-&lt;br /&gt;
|sethoverparams&lt;br /&gt;
|0x8225&lt;br /&gt;
|0x817b&lt;br /&gt;
|-&lt;br /&gt;
|joltbody&lt;br /&gt;
|0x8226&lt;br /&gt;
|0x817c&lt;br /&gt;
|-&lt;br /&gt;
|freevehicle&lt;br /&gt;
|0x8227&lt;br /&gt;
|0x817d&lt;br /&gt;
|-&lt;br /&gt;
|getwheelsurface&lt;br /&gt;
|0x8228&lt;br /&gt;
|0x817e&lt;br /&gt;
|-&lt;br /&gt;
|getvehicleowner&lt;br /&gt;
|0x8229&lt;br /&gt;
|0x817f&lt;br /&gt;
|-&lt;br /&gt;
|setvehiclelookattext&lt;br /&gt;
|0x822A&lt;br /&gt;
|0x8180&lt;br /&gt;
|-&lt;br /&gt;
|setvehicleteam&lt;br /&gt;
|0x822B&lt;br /&gt;
|0x8181&lt;br /&gt;
|-&lt;br /&gt;
|setneargoalnotifydist&lt;br /&gt;
|0x822C&lt;br /&gt;
|0x8182&lt;br /&gt;
|-&lt;br /&gt;
|setvehgoalpos&lt;br /&gt;
|0x822D&lt;br /&gt;
|0x8183&lt;br /&gt;
|-&lt;br /&gt;
|setgoalyaw&lt;br /&gt;
|0x822E&lt;br /&gt;
|0x8184&lt;br /&gt;
|-&lt;br /&gt;
|cleargoalyaw&lt;br /&gt;
|0x822F&lt;br /&gt;
|0x8185&lt;br /&gt;
|-&lt;br /&gt;
|settargetyaw&lt;br /&gt;
|0x8230&lt;br /&gt;
|0x8186&lt;br /&gt;
|-&lt;br /&gt;
|cleartargetyaw&lt;br /&gt;
|0x8231&lt;br /&gt;
|0x8187&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_helisetai&lt;br /&gt;
|0x8232&lt;br /&gt;
|0x8188&lt;br /&gt;
|-&lt;br /&gt;
|setturrettargetvec&lt;br /&gt;
|0x8233&lt;br /&gt;
|0x8189&lt;br /&gt;
|-&lt;br /&gt;
|setturrettargetent&lt;br /&gt;
|0x8234&lt;br /&gt;
|0x818a&lt;br /&gt;
|-&lt;br /&gt;
|clearturrettarget&lt;br /&gt;
|0x8235&lt;br /&gt;
|0x818b&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_canturrettargetpoint&lt;br /&gt;
|0x8236&lt;br /&gt;
|0x818c&lt;br /&gt;
|-&lt;br /&gt;
|setlookatent&lt;br /&gt;
|0x8237&lt;br /&gt;
|0x818d&lt;br /&gt;
|-&lt;br /&gt;
|clearlookatent&lt;br /&gt;
|0x8238&lt;br /&gt;
|0x818e&lt;br /&gt;
|-&lt;br /&gt;
|setvehweapon&lt;br /&gt;
|0x8239&lt;br /&gt;
|0x818f&lt;br /&gt;
|-&lt;br /&gt;
|fireweapon&lt;br /&gt;
|0x823A&lt;br /&gt;
|0x8190&lt;br /&gt;
|-&lt;br /&gt;
|vehicleturretcontrolon&lt;br /&gt;
|0x823B&lt;br /&gt;
|0x8191&lt;br /&gt;
|-&lt;br /&gt;
|vehicleturretcontroloff&lt;br /&gt;
|0x8200&lt;br /&gt;
|0x8192&lt;br /&gt;
|-&lt;br /&gt;
|isturretready&lt;br /&gt;
|0x8201&lt;br /&gt;
|0x8193&lt;br /&gt;
|-&lt;br /&gt;
|vehicledriveto&lt;br /&gt;
|0x8202&lt;br /&gt;
|0x8194&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_dospawn&lt;br /&gt;
|0x8203&lt;br /&gt;
|0x8195&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_isphysveh&lt;br /&gt;
|0x8204&lt;br /&gt;
|0x8196&lt;br /&gt;
|-&lt;br /&gt;
|vehphys_crash&lt;br /&gt;
|0x8205&lt;br /&gt;
|0x8197&lt;br /&gt;
|-&lt;br /&gt;
|vehphys_launch&lt;br /&gt;
|0x8206&lt;br /&gt;
|0x8198&lt;br /&gt;
|-&lt;br /&gt;
|vehphys_disablecrashing&lt;br /&gt;
|0x8207&lt;br /&gt;
|0x8199&lt;br /&gt;
|-&lt;br /&gt;
|vehphys_enablecrashing&lt;br /&gt;
|0x8208&lt;br /&gt;
|0x819a&lt;br /&gt;
|-&lt;br /&gt;
|vehphys_setspeed&lt;br /&gt;
|0x8209&lt;br /&gt;
|0x819b&lt;br /&gt;
|-&lt;br /&gt;
|vehphys_setconveyorbelt&lt;br /&gt;
|0x820A&lt;br /&gt;
|0x819c&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- helicopter --&amp;gt;&lt;br /&gt;
|freehelicopter&lt;br /&gt;
|0x820B&lt;br /&gt;
|0x819D&lt;br /&gt;
|-&lt;br /&gt;
|setdamagestage&lt;br /&gt;
|0x8002&lt;br /&gt;
|0x82F2&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- hud element --&amp;gt;&lt;br /&gt;
|settext&lt;br /&gt;
|0x80b6&lt;br /&gt;
|0x827d&lt;br /&gt;
|-&lt;br /&gt;
|clearalltextafterhudelem&lt;br /&gt;
|0x80b7&lt;br /&gt;
|0x827e&lt;br /&gt;
|-&lt;br /&gt;
|setshader&lt;br /&gt;
|0x80b8&lt;br /&gt;
|0x827f&lt;br /&gt;
|-&lt;br /&gt;
|settargetent&lt;br /&gt;
|0x80b9&lt;br /&gt;
|0x8280&lt;br /&gt;
|-&lt;br /&gt;
|cleartargetent&lt;br /&gt;
|0x80ba&lt;br /&gt;
|0x8281&lt;br /&gt;
|-&lt;br /&gt;
|settimer&lt;br /&gt;
|0x80bb&lt;br /&gt;
|0x8282&lt;br /&gt;
|-&lt;br /&gt;
|settimerup&lt;br /&gt;
|0x80bc&lt;br /&gt;
|0x8283&lt;br /&gt;
|-&lt;br /&gt;
|settimerstatic&lt;br /&gt;
|0x80bd&lt;br /&gt;
|0x8284&lt;br /&gt;
|-&lt;br /&gt;
|settenthstimer&lt;br /&gt;
|0x80be&lt;br /&gt;
|0x8285&lt;br /&gt;
|-&lt;br /&gt;
|settenthstimerup&lt;br /&gt;
|0x80bf&lt;br /&gt;
|0x8286&lt;br /&gt;
|-&lt;br /&gt;
|settenthstimerstatic&lt;br /&gt;
|0x80c0&lt;br /&gt;
|0x8287&lt;br /&gt;
|-&lt;br /&gt;
|setclock&lt;br /&gt;
|0x80c1&lt;br /&gt;
|0x8288&lt;br /&gt;
|-&lt;br /&gt;
|setclockup&lt;br /&gt;
|0x80c2&lt;br /&gt;
|0x8289&lt;br /&gt;
|-&lt;br /&gt;
|setvalue&lt;br /&gt;
|0x80c3&lt;br /&gt;
|0x828a&lt;br /&gt;
|-&lt;br /&gt;
|setwaypoint&lt;br /&gt;
|0x80c4&lt;br /&gt;
|0x828b&lt;br /&gt;
|-&lt;br /&gt;
|rotatingicon&lt;br /&gt;
|0x80c5&lt;br /&gt;
|0x828c&lt;br /&gt;
|-&lt;br /&gt;
|secondaryarrow&lt;br /&gt;
|0x807b&lt;br /&gt;
|0x828d&lt;br /&gt;
|-&lt;br /&gt;
|setwaypointiconoffscreenonly&lt;br /&gt;
|0x807c&lt;br /&gt;
|0x828e&lt;br /&gt;
|-&lt;br /&gt;
|fadeovertime&lt;br /&gt;
|0x807d&lt;br /&gt;
|0x828f&lt;br /&gt;
|-&lt;br /&gt;
|scaleovertime&lt;br /&gt;
|0x807e&lt;br /&gt;
|0x8290&lt;br /&gt;
|-&lt;br /&gt;
|moveovertime&lt;br /&gt;
|0x807f&lt;br /&gt;
|0x8291&lt;br /&gt;
|-&lt;br /&gt;
|reset&lt;br /&gt;
|0x8080&lt;br /&gt;
|0x8292&lt;br /&gt;
|-&lt;br /&gt;
|destroy&lt;br /&gt;
|0x8081&lt;br /&gt;
|0x8293&lt;br /&gt;
|-&lt;br /&gt;
|setpulsefx&lt;br /&gt;
|0x8082&lt;br /&gt;
|0x8294&lt;br /&gt;
|-&lt;br /&gt;
|setplayernamestring&lt;br /&gt;
|0x8083&lt;br /&gt;
|0x8295&lt;br /&gt;
|-&lt;br /&gt;
|changefontscaleovertime&lt;br /&gt;
|N/A&lt;br /&gt;
|0x8296&lt;br /&gt;
|-&lt;br /&gt;
|fadeovertime2&lt;br /&gt;
|0x830b&lt;br /&gt;
|N/A&lt;br /&gt;
|-&lt;br /&gt;
|scaleovertime2&lt;br /&gt;
|0x830c&lt;br /&gt;
|N/A&lt;br /&gt;
|-&lt;br /&gt;
|moveovertime2&lt;br /&gt;
|0x8084&lt;br /&gt;
|N/A&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- client? --&amp;gt;&lt;br /&gt;
|getorigin&lt;br /&gt;
|0x808E&lt;br /&gt;
|0x82a0&lt;br /&gt;
|-&lt;br /&gt;
|useby&lt;br /&gt;
|0x8092&lt;br /&gt;
|0x82a4&lt;br /&gt;
|-&lt;br /&gt;
|playsound&lt;br /&gt;
|0x8093&lt;br /&gt;
|0x82a5&lt;br /&gt;
|-&lt;br /&gt;
|playsoundasmaster&lt;br /&gt;
|0x806E&lt;br /&gt;
|0x82af&lt;br /&gt;
|-&lt;br /&gt;
|playsoundtoteam&lt;br /&gt;
|0x8003&lt;br /&gt;
|0x82f3&lt;br /&gt;
|-&lt;br /&gt;
|playsoundtoplayer&lt;br /&gt;
|0x8004&lt;br /&gt;
|0x82f4&lt;br /&gt;
|-&lt;br /&gt;
|playloopsound&lt;br /&gt;
|0x806F&lt;br /&gt;
|0x82b0&lt;br /&gt;
|-&lt;br /&gt;
|getnormalhealth&lt;br /&gt;
|0x8074&lt;br /&gt;
|0x82b5&lt;br /&gt;
|-&lt;br /&gt;
|setnormalhealth&lt;br /&gt;
|0x804C&lt;br /&gt;
|0x82b6&lt;br /&gt;
|-&lt;br /&gt;
|show&lt;br /&gt;
|0x804F&lt;br /&gt;
|0x82b9&lt;br /&gt;
|-&lt;br /&gt;
|hide&lt;br /&gt;
|0x8050&lt;br /&gt;
|0x82ba&lt;br /&gt;
|-&lt;br /&gt;
|playerhide&lt;br /&gt;
|0x8005&lt;br /&gt;
|0x82f5&lt;br /&gt;
|-&lt;br /&gt;
|showtoplayer&lt;br /&gt;
|0x8006&lt;br /&gt;
|0x82f6&lt;br /&gt;
|-&lt;br /&gt;
|enableplayeruse&lt;br /&gt;
|0x8007&lt;br /&gt;
|0x82f7&lt;br /&gt;
|-&lt;br /&gt;
|disableplayeruse&lt;br /&gt;
|0x8008&lt;br /&gt;
|0x82f8&lt;br /&gt;
|-&lt;br /&gt;
|setscriptmoverkillcam&lt;br /&gt;
|0x830A&lt;br /&gt;
|0x830a&lt;br /&gt;
|-&lt;br /&gt;
|makescrambler&lt;br /&gt;
|0x8009&lt;br /&gt;
|0x82f9&lt;br /&gt;
|-&lt;br /&gt;
|makeportableradar&lt;br /&gt;
|0x800A&lt;br /&gt;
|0x82fa&lt;br /&gt;
|-&lt;br /&gt;
|maketrophysystem&lt;br /&gt;
|0x800B&lt;br /&gt;
|0x82fb&lt;br /&gt;
|-&lt;br /&gt;
|setmode&lt;br /&gt;
|0x8060&lt;br /&gt;
|0x82ca&lt;br /&gt;
|-&lt;br /&gt;
|getmode&lt;br /&gt;
|0x8061&lt;br /&gt;
|0x82cb&lt;br /&gt;
|-&lt;br /&gt;
|placespawnpoint&lt;br /&gt;
|0x800C&lt;br /&gt;
|0x82fc&lt;br /&gt;
|-&lt;br /&gt;
|setteamfortrigger&lt;br /&gt;
|0x800D&lt;br /&gt;
|0x82fd&lt;br /&gt;
|-&lt;br /&gt;
|clientclaimtrigger&lt;br /&gt;
|0x800E&lt;br /&gt;
|0x82fe&lt;br /&gt;
|-&lt;br /&gt;
|clientreleasetrigger&lt;br /&gt;
|0x800F&lt;br /&gt;
|0x82ff&lt;br /&gt;
|-&lt;br /&gt;
|releaseclaimedtrigger&lt;br /&gt;
|0x8010&lt;br /&gt;
|0x8300&lt;br /&gt;
|-&lt;br /&gt;
|isusingonlinedataoffline&lt;br /&gt;
|0x8011&lt;br /&gt;
|0x8301&lt;br /&gt;
|-&lt;br /&gt;
|getrestedtime&lt;br /&gt;
|0x8012&lt;br /&gt;
|0x8302&lt;br /&gt;
|-&lt;br /&gt;
|sendleaderboards&lt;br /&gt;
|0x8013&lt;br /&gt;
|0x8303&lt;br /&gt;
|-&lt;br /&gt;
|logstring&lt;br /&gt;
|0x8020&lt;br /&gt;
|0x82ec&lt;br /&gt;
|-&lt;br /&gt;
|isonladder&lt;br /&gt;
|0x8014&lt;br /&gt;
|0x8304&lt;br /&gt;
|-&lt;br /&gt;
|startragdoll&lt;br /&gt;
|0x801E&lt;br /&gt;
|0x82ea&lt;br /&gt;
|-&lt;br /&gt;
|getcorpseanim&lt;br /&gt;
|0x8015&lt;br /&gt;
|0x8305&lt;br /&gt;
|-&lt;br /&gt;
|playerforcedeathanim&lt;br /&gt;
|0x8016&lt;br /&gt;
|0x8306&lt;br /&gt;
|-&lt;br /&gt;
|startac130&lt;br /&gt;
|0x8307&lt;br /&gt;
|0x8307&lt;br /&gt;
|-&lt;br /&gt;
|stopac130&lt;br /&gt;
|0x8308&lt;br /&gt;
|0x8308&lt;br /&gt;
|}&lt;br /&gt;
=== OP_ScriptLocal Calls ===&lt;br /&gt;
These opcodes are used to make local calls to functions or methods in the same script file. After the opcode is a signed 24 bit integer. After casting to a 32 bit integer, it is shifted to the left 8 bits and then to the right 10 bits to get the true offset. For threaded calls (OP_ScriptLocalThreadCall - OP_ScriptLocalMethodChildThreadCall), the parameter count is loaded afterwards as an 8 bit integer.&lt;br /&gt;
=== OP_ScriptFar Calls ===&lt;br /&gt;
These opcodes are used to make far calls to functions or methods in an external script file. During link-time the file name and the function name is used to create the offset. The file name &#039;&#039;&#039;is loaded from the buffer&#039;&#039;&#039; as a 16 bit value. If this value &#039;&#039;&#039;is not&#039;&#039;&#039; equal to zero, then this value is converted to a string, which is the file name. If this value &#039;&#039;&#039;is&#039;&#039;&#039; equal to zero, then a string is loaded afterwards, which is the file name. The function it calls is also loaded &#039;&#039;&#039;in the the buffer&#039;&#039;&#039; as another 16 bit value, and its name is loaded the same way as the file name. After being linked the offset is stored after the opcode as a 24 bit integer. After casting to a 32 bit integer, it is shifted to the left 8 bits and then to the right 10 bits to get the true offset. For threaded calls (OP_ScriptFarThreadCall - OP_ScriptFarMethodChildThreadCall), the parameter count is loaded afterwards as an 8 bit integer.&lt;br /&gt;
=== OP_Script Pointer Calls ===&lt;br /&gt;
These opcodes load a pointer from the stack and simply jump to them. For threaded calls (OP_ScriptThreadCallPointer - OP_ScriptMethodChildThreadCallPointer), the parameter count is loaded afterwards as an 8 bit integer.&lt;br /&gt;
=== OP_SetNewLocalVariableFieldCached0 ===&lt;br /&gt;
This creates a new local variable and then sets the ent on the stack as its value. The variable index is stored as a byte after the opcode.&lt;br /&gt;
=== OP_EvalArrayRef ===&lt;br /&gt;
This opcode is used to evaluate an array index to &#039;&#039;&#039;set&#039;&#039;&#039; its value afterwards. The first ent on the stack is the index, the second ent is the value.&lt;br /&gt;
In scriptfiles, this opcode is only used to evaluate fields.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
level.array[0] = 1;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
The asm:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
OP_GetByte 1&lt;br /&gt;
OP_GetZero&lt;br /&gt;
OP_EvalLevelFieldVariableRef array&lt;br /&gt;
OP_EvalArrayRef&lt;br /&gt;
OP_SetVariableField&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
=== OP_EvalLocalArrayRefCached0 ===&lt;br /&gt;
This opcode evaluates the last created local array using OP_EvalArrayRef internally.&lt;br /&gt;
=== OP_EvalNewLocalArrayRefCached0 ===&lt;br /&gt;
This opcode is used to create a local array and set one of its elements without having to initialize it first. This opcode jumps internally to OP_EvalLocalArrayRefCached0.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
array[&amp;quot;friendly&amp;quot;] = 3;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
The asm:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
OP_GetByte 3&lt;br /&gt;
OP_GetString &amp;quot;friendly&amp;quot;&lt;br /&gt;
OP_EvalNewLocalArrayRefCached0 0&lt;br /&gt;
OP_SetVariableField&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
=== OP_AddArray ===&lt;br /&gt;
This opcode adds the value on top of the stack to the array on the second place on the stack. It is used to initialize arrays with known values, most likely with curly brackets e.g.:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
array = { 0, 1 };&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
The asm:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
OP_EmptyArray&lt;br /&gt;
OP_GetZero&lt;br /&gt;
OP_AddArray&lt;br /&gt;
OP_GetByte 1&lt;br /&gt;
OP_AddArray&lt;br /&gt;
OP_SetNewLocalVariableFieldCached0 0&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
The second thing this opcode can do is append two arrays to each other. Note that it is not supposed to be used like this.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
array2 = array + { 2.0, &amp;quot;3&amp;quot; };&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
The asm:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
OP_EvalLocalVariableCached0&lt;br /&gt;
OP_GetFloat 2.0&lt;br /&gt;
OP_AddArray&lt;br /&gt;
OP_GetString &amp;quot;3&amp;quot;&lt;br /&gt;
OP_AddArray&lt;br /&gt;
OP_SetNewLocalVariableFieldCached0 1&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
== Field IDs ==&lt;br /&gt;
In Ghosts and AW, fields have been sorted alphabetically and were then enumerated. This way, fields starting with the letter a such as &amp;quot;alignx&amp;quot; have got the lowest field ids.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Client Fields&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!rowspan=&amp;quot;2&amp;quot;|Field&lt;br /&gt;
!colspan=&amp;quot;1&amp;quot;|MW3&lt;br /&gt;
!colspan=&amp;quot;1&amp;quot;|AW&lt;br /&gt;
|-&lt;br /&gt;
!PS3 ID&lt;br /&gt;
!PS3 ID&lt;br /&gt;
|-&lt;br /&gt;
| name&lt;br /&gt;
| 0x2D1&lt;br /&gt;
| 0x2AF&lt;br /&gt;
|-&lt;br /&gt;
| sessionteam  &lt;br /&gt;
| 0x2D2&lt;br /&gt;
| 0x3C1&lt;br /&gt;
|-&lt;br /&gt;
| sessionstate&lt;br /&gt;
| 0x2D3&lt;br /&gt;
| 0x3C0&lt;br /&gt;
|-&lt;br /&gt;
| maxhealth&lt;br /&gt;
| 0x2D4&lt;br /&gt;
| 0x279&lt;br /&gt;
|-&lt;br /&gt;
| score&lt;br /&gt;
| 0x2D5&lt;br /&gt;
| 0x394&lt;br /&gt;
|-&lt;br /&gt;
| deaths&lt;br /&gt;
| 0x2D6&lt;br /&gt;
| 0x112&lt;br /&gt;
|-&lt;br /&gt;
| extrascore0&lt;br /&gt;
|&lt;br /&gt;
| 0x16D&lt;br /&gt;
|-&lt;br /&gt;
| extrascore1&lt;br /&gt;
|&lt;br /&gt;
| 0x16E&lt;br /&gt;
|-&lt;br /&gt;
| killstreakcount&lt;br /&gt;
|&lt;br /&gt;
| 0x242&lt;br /&gt;
|-&lt;br /&gt;
| objective&lt;br /&gt;
|&lt;br /&gt;
| 0x2DA&lt;br /&gt;
|-&lt;br /&gt;
| statusicon&lt;br /&gt;
| 0x2D7&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| headicon&lt;br /&gt;
| 0x2D8&lt;br /&gt;
| 0x1E8&lt;br /&gt;
|-&lt;br /&gt;
| headiconteam&lt;br /&gt;
| 0x2D9&lt;br /&gt;
| 0x1E9&lt;br /&gt;
|-&lt;br /&gt;
| kills&lt;br /&gt;
| 0x2DB&lt;br /&gt;
| 0x240&lt;br /&gt;
|-&lt;br /&gt;
| assists&lt;br /&gt;
| 0x2DC&lt;br /&gt;
| 0x53&lt;br /&gt;
|-&lt;br /&gt;
| hasradar&lt;br /&gt;
| 0x2DD&lt;br /&gt;
| 0x1E4&lt;br /&gt;
|-&lt;br /&gt;
| isradarblocked &lt;br /&gt;
| 0x2DE&lt;br /&gt;
| 0x217&lt;br /&gt;
|-&lt;br /&gt;
| radarstrength&lt;br /&gt;
| 0x2DF&lt;br /&gt;
| 0x357&lt;br /&gt;
|-&lt;br /&gt;
| radarshowenemydirection&lt;br /&gt;
| 0x2E0&lt;br /&gt;
| 0x356&lt;br /&gt;
|-&lt;br /&gt;
| radarmode&lt;br /&gt;
| 0x2E1&lt;br /&gt;
| 0x355&lt;br /&gt;
|-&lt;br /&gt;
| enemyradarmode&lt;br /&gt;
|&lt;br /&gt;
| 0x14D&lt;br /&gt;
|-&lt;br /&gt;
| forcespectatorclient&lt;br /&gt;
| 0x2E2&lt;br /&gt;
| 0x19C&lt;br /&gt;
|-&lt;br /&gt;
| killcamentity&lt;br /&gt;
| 0x2E3&lt;br /&gt;
| 0x23E&lt;br /&gt;
|-&lt;br /&gt;
| killcamentitylookat&lt;br /&gt;
| 0x2E4&lt;br /&gt;
| 0x23F&lt;br /&gt;
|-&lt;br /&gt;
| spectatekillcam&lt;br /&gt;
|&lt;br /&gt;
| 0x3E3&lt;br /&gt;
|-&lt;br /&gt;
| archivetime&lt;br /&gt;
| 0x2E5&lt;br /&gt;
| 0x4D&lt;br /&gt;
|-&lt;br /&gt;
| psoffsettime &lt;br /&gt;
| 0x2E6&lt;br /&gt;
| 0x352&lt;br /&gt;
|-&lt;br /&gt;
| pers&lt;br /&gt;
| 0x2E7&lt;br /&gt;
| 0x311&lt;br /&gt;
|-&lt;br /&gt;
| game_extrainfo&lt;br /&gt;
|&lt;br /&gt;
| 0x1B5&lt;br /&gt;
|-&lt;br /&gt;
| playercardpatch&lt;br /&gt;
|&lt;br /&gt;
| 0x325&lt;br /&gt;
|-&lt;br /&gt;
| playercardbackground&lt;br /&gt;
|&lt;br /&gt;
| 0x324&lt;br /&gt;
|}&lt;br /&gt;
&#039;&#039;&#039;Entity Fields&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot;|Field&lt;br /&gt;
! colspan=&amp;quot;1&amp;quot;|MW3&lt;br /&gt;
! colspan=&amp;quot;1&amp;quot;|AW&lt;br /&gt;
|-&lt;br /&gt;
! PS3 ID&lt;br /&gt;
! PS3 ID&lt;br /&gt;
|-&lt;br /&gt;
| code_classname&lt;br /&gt;
| 0x2C3&lt;br /&gt;
| 0xB1&lt;br /&gt;
|-&lt;br /&gt;
| classname&lt;br /&gt;
| 0x2C4&lt;br /&gt;
| 0xAF&lt;br /&gt;
|-&lt;br /&gt;
| origin&lt;br /&gt;
| 0x2C5&lt;br /&gt;
| 0x2EA&lt;br /&gt;
|-&lt;br /&gt;
| model&lt;br /&gt;
| 0x2C6&lt;br /&gt;
| 0x2A4&lt;br /&gt;
|-&lt;br /&gt;
| spawnflags&lt;br /&gt;
| 0x2C7&lt;br /&gt;
| 0x3DF&lt;br /&gt;
|-&lt;br /&gt;
| target&lt;br /&gt;
| 0x2C8&lt;br /&gt;
| 0x4A9&lt;br /&gt;
|-&lt;br /&gt;
| targetname&lt;br /&gt;
| 0x2C9&lt;br /&gt;
| 0x4AB&lt;br /&gt;
|-&lt;br /&gt;
| count&lt;br /&gt;
| 0x2CA&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| health&lt;br /&gt;
| 0x2CB&lt;br /&gt;
| 0x1EB&lt;br /&gt;
|-&lt;br /&gt;
| dmg&lt;br /&gt;
| 0x2CC&lt;br /&gt;
| 0x12A&lt;br /&gt;
|-&lt;br /&gt;
| angles&lt;br /&gt;
| 0x2CD&lt;br /&gt;
| 0x45&lt;br /&gt;
|-&lt;br /&gt;
| birthtime&lt;br /&gt;
| 0x2CE&lt;br /&gt;
| 0x81&lt;br /&gt;
|-&lt;br /&gt;
| script_linkname&lt;br /&gt;
| 0x2CF&lt;br /&gt;
| 0x39D&lt;br /&gt;
|-&lt;br /&gt;
| slidevelocity&lt;br /&gt;
| 0x2D0&lt;br /&gt;
| 0x3D0&lt;br /&gt;
|-&lt;br /&gt;
| owner&lt;br /&gt;
| &lt;br /&gt;
| 0x2ED&lt;br /&gt;
|}&lt;br /&gt;
&#039;&#039;&#039;Vehicle Script Fields&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot;|Field&lt;br /&gt;
! colspan=&amp;quot;1&amp;quot;|MW3&lt;br /&gt;
! colspan=&amp;quot;1&amp;quot;|Ghosts&lt;br /&gt;
! colspan=&amp;quot;1&amp;quot;|AW&lt;br /&gt;
|-&lt;br /&gt;
! PS3 ID&lt;br /&gt;
! PC ID&lt;br /&gt;
! PS3 ID&lt;br /&gt;
|-&lt;br /&gt;
| veh_speed || 0x2FF || 0x2B9 || 0x4FC&lt;br /&gt;
|-&lt;br /&gt;
| veh_pathspeed || 0x300 || 0x2B6 || 0x4F9 &lt;br /&gt;
|-&lt;br /&gt;
| veh_transmission || 0x301 || 0x2BC || 0x4FF &lt;br /&gt;
|-&lt;br /&gt;
| veh_pathdir || 0x302 || 0x2B5 || 0x4F8 &lt;br /&gt;
|-&lt;br /&gt;
| veh_pathtype || 0x303 || 0x2B7 || 0x4FA &lt;br /&gt;
|-&lt;br /&gt;
| veh_topspeed || 0x304 || 0x2BB || 0x4FE &lt;br /&gt;
|-&lt;br /&gt;
| veh_brake || 0x305 || 0x2B0 || 0x4F2 &lt;br /&gt;
|-&lt;br /&gt;
| veh_throttle || 0x306 || 0x2BA || 0x4FD &lt;br /&gt;
|}&lt;br /&gt;
&#039;&#039;&#039;Hudelem Fields&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot;|Field&lt;br /&gt;
! colspan=&amp;quot;1&amp;quot;|MW3&lt;br /&gt;
! colspan=&amp;quot;1&amp;quot;|AW&lt;br /&gt;
|-&lt;br /&gt;
! PS3 ID&lt;br /&gt;
! PS3 ID&lt;br /&gt;
|-&lt;br /&gt;
| x&lt;br /&gt;
| 0x2E8&lt;br /&gt;
| 0x534&lt;br /&gt;
|-&lt;br /&gt;
| y&lt;br /&gt;
| 0x2E9&lt;br /&gt;
| 0x53C&lt;br /&gt;
|-&lt;br /&gt;
| z&lt;br /&gt;
| 0x2EA&lt;br /&gt;
| 0x53F&lt;br /&gt;
|-&lt;br /&gt;
| fontscale&lt;br /&gt;
| 0x2EB&lt;br /&gt;
| 0x190&lt;br /&gt;
|-&lt;br /&gt;
| font&lt;br /&gt;
| 0x2EC&lt;br /&gt;
| 0x18F&lt;br /&gt;
|-&lt;br /&gt;
| alignx&lt;br /&gt;
| 0x2ED&lt;br /&gt;
| 0x30&lt;br /&gt;
|-&lt;br /&gt;
| aligny&lt;br /&gt;
| 0x2EE&lt;br /&gt;
| 0x31&lt;br /&gt;
|-&lt;br /&gt;
| horzalign&lt;br /&gt;
| 0x2EF&lt;br /&gt;
| 0x1F8&lt;br /&gt;
|-&lt;br /&gt;
| vertalign&lt;br /&gt;
| 0x2F0&lt;br /&gt;
| 0x504&lt;br /&gt;
|-&lt;br /&gt;
| color&lt;br /&gt;
| 0x2F1&lt;br /&gt;
| 0xC9&lt;br /&gt;
|-&lt;br /&gt;
| alpha &lt;br /&gt;
| 0x2F2&lt;br /&gt;
| 0x3B&lt;br /&gt;
|-&lt;br /&gt;
| label &lt;br /&gt;
| 0x2F3&lt;br /&gt;
| 0x249&lt;br /&gt;
|-&lt;br /&gt;
| sort &lt;br /&gt;
| 0x2F4&lt;br /&gt;
| 0x3D9&lt;br /&gt;
|-&lt;br /&gt;
| foreground &lt;br /&gt;
| 0x2F5&lt;br /&gt;
| 0x19E&lt;br /&gt;
|-&lt;br /&gt;
| lowresbackground &lt;br /&gt;
| 0x2F6&lt;br /&gt;
| 0x26B&lt;br /&gt;
|-&lt;br /&gt;
| hidewhendead &lt;br /&gt;
| 0x2F7&lt;br /&gt;
| 0x1F0&lt;br /&gt;
|-&lt;br /&gt;
| hidewheninmenu &lt;br /&gt;
| 0x2F8&lt;br /&gt;
| 0x1F2&lt;br /&gt;
|-&lt;br /&gt;
| glowcolor &lt;br /&gt;
| 0x2FA&lt;br /&gt;
| 0x1C4&lt;br /&gt;
|-&lt;br /&gt;
| glowalpha &lt;br /&gt;
| 0x2FB&lt;br /&gt;
| 0x8C&lt;br /&gt;
|-&lt;br /&gt;
| archived &lt;br /&gt;
| 0x2FC&lt;br /&gt;
| 0x4C&lt;br /&gt;
|-&lt;br /&gt;
| showinkillcam&lt;br /&gt;
|&lt;br /&gt;
| 0x3C8&lt;br /&gt;
|-&lt;br /&gt;
| hidein3rdperson &lt;br /&gt;
| 0x2FD&lt;br /&gt;
| 0x1EF&lt;br /&gt;
|-&lt;br /&gt;
| positioninworld&lt;br /&gt;
|&lt;br /&gt;
| 0x333&lt;br /&gt;
|-&lt;br /&gt;
| hidewhenindemo &lt;br /&gt;
| 0x2FE&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| enablehudlighting&lt;br /&gt;
|&lt;br /&gt;
| 0x140&lt;br /&gt;
|}&lt;br /&gt;
&#039;&#039;&#039;Vehicle Node Fields&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!rowspan=&amp;quot;2&amp;quot;|Field&lt;br /&gt;
!colspan=&amp;quot;1&amp;quot;|MW3&lt;br /&gt;
!colspan=&amp;quot;1&amp;quot;|AW&lt;br /&gt;
|-&lt;br /&gt;
!PS3 ID&lt;br /&gt;
!PS3 ID&lt;br /&gt;
|-&lt;br /&gt;
| targetname&lt;br /&gt;
| 0x2C9&lt;br /&gt;
| 0x4AB&lt;br /&gt;
|-&lt;br /&gt;
| target&lt;br /&gt;
| 0x2C8&lt;br /&gt;
| 0x4A9&lt;br /&gt;
|-&lt;br /&gt;
| script_linkname&lt;br /&gt;
| 0x2CF&lt;br /&gt;
| 0x39D&lt;br /&gt;
|-&lt;br /&gt;
| script_noteworthy&lt;br /&gt;
| 0x307&lt;br /&gt;
| 0x39F&lt;br /&gt;
|-&lt;br /&gt;
| origin&lt;br /&gt;
| 0x2C5&lt;br /&gt;
| 0x2EA&lt;br /&gt;
|-&lt;br /&gt;
| angles&lt;br /&gt;
| 0x2CD&lt;br /&gt;
| 0x45&lt;br /&gt;
|-&lt;br /&gt;
| speed&lt;br /&gt;
| 0x308&lt;br /&gt;
| 0x3E7&lt;br /&gt;
|-&lt;br /&gt;
| lookahead&lt;br /&gt;
|  0x309&lt;br /&gt;
| 0x25F&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Therifboy</name></author>
	</entry>
	<entry>
		<id>https://codresearch.dev/index.php?title=Game_Client_(BO2)&amp;diff=796</id>
		<title>Game Client (BO2)</title>
		<link rel="alternate" type="text/html" href="https://codresearch.dev/index.php?title=Game_Client_(BO2)&amp;diff=796"/>
		<updated>2014-12-29T19:39:32Z</updated>

		<summary type="html">&lt;p&gt;Therifboy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Game Structures]]&lt;br /&gt;
[[Category:BO2]]&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
/* gclient_s-&amp;gt;buttons.buttons */&lt;br /&gt;
#define __jump			0x00200000&lt;br /&gt;
#define __stance		0x00000200&lt;br /&gt;
#define __use			0x04000000&lt;br /&gt;
#define __triangle		0x00000008&lt;br /&gt;
#define __attack		0x80000000&lt;br /&gt;
#define __ads			0x00100000&lt;br /&gt;
#define __prone			0x00800000&lt;br /&gt;
#define __crouch		0x00400000&lt;br /&gt;
#define __frag			0x00020000&lt;br /&gt;
#define __tactical		0x00010000&lt;br /&gt;
#define __melee			0x20000000&lt;br /&gt;
#define __sprint		0x40000000&lt;br /&gt;
&lt;br /&gt;
/* gclient_s-&amp;gt;actionSlots.buttons2 */&lt;br /&gt;
#define __dpadup		0x00040000&lt;br /&gt;
#define __dpaddown		0x00020000&lt;br /&gt;
#define __dpadleft		0x00010000&lt;br /&gt;
#define __dpadright		0x00008000&lt;br /&gt;
&lt;br /&gt;
enum team_t&lt;br /&gt;
{&lt;br /&gt;
	TEAM_FREE = 0x0,&lt;br /&gt;
	TEAM_ALLIES = 0x1,&lt;br /&gt;
	TEAM_AXIS = 0x2,&lt;br /&gt;
	TEAM_THREE = 0x3,&lt;br /&gt;
	TEAM_FOUR = 0x4,&lt;br /&gt;
	TEAM_FIVE = 0x5,&lt;br /&gt;
	TEAM_SIX = 0x6,&lt;br /&gt;
	TEAM_SEVEN = 0x7,&lt;br /&gt;
	TEAM_EIGHT = 0x8,&lt;br /&gt;
	TEAM_MAX = 0x9&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
enum sessionState_t&lt;br /&gt;
{&lt;br /&gt;
	SESS_STATE_PLAYING = 0x0,&lt;br /&gt;
	SESS_STATE_DEAD = 0x1,&lt;br /&gt;
	SESS_STATE_SPECTATOR = 0x2,&lt;br /&gt;
	SESS_STATE_INTERMISSION = 0x3,&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
enum clientConnected_t&lt;br /&gt;
{&lt;br /&gt;
	CON_DISCONNECTED = 0x0,&lt;br /&gt;
	CON_CONNECTING = 0x1,&lt;br /&gt;
	CON_CONNECTED = 0x2,&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
/* playerState_s-&amp;gt;stats[4] */&lt;br /&gt;
enum statIndex_t&lt;br /&gt;
{&lt;br /&gt;
  STAT_HEALTH = 0x0,&lt;br /&gt;
  STAT_DEAD_YAW = 0x1,&lt;br /&gt;
  STAT_MAX_HEALTH = 0x2,&lt;br /&gt;
  STAT_SPAWN_COUNT = 0x3,&lt;br /&gt;
  MAX_STATS = 0x4,&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct PlayerVehicleState&lt;br /&gt;
{&lt;br /&gt;
	float origin[3];//0&lt;br /&gt;
	float angles[3];//0xC&lt;br /&gt;
	float velocity[3];//0x18&lt;br /&gt;
	float angVelocity[3];//0x24&lt;br /&gt;
	float tilt[2];//0x30&lt;br /&gt;
	float tiltVelocity[2];//0x38&lt;br /&gt;
	float targetHeightDelta;//0x40&lt;br /&gt;
	float lastGroundHeight;//0x44&lt;br /&gt;
	int entity;//0x48&lt;br /&gt;
	int flags;//0x4C&lt;br /&gt;
	bool fullPhysics&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct SprintState&lt;br /&gt;
{&lt;br /&gt;
	int sprintButtonUpRequired;//0x0&lt;br /&gt;
	int sprintDelay;//0x4&lt;br /&gt;
	int lastSprintStart;//0x8&lt;br /&gt;
	int lastSprintEnd;//0xC&lt;br /&gt;
	int sprintStartMaxLength;//0x10&lt;br /&gt;
	int sprintDuration;//0x14&lt;br /&gt;
	int sprintCooldown;//0x18&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct MantleState&lt;br /&gt;
{&lt;br /&gt;
	float yaw; //0x0&lt;br /&gt;
	int timer; //0x4&lt;br /&gt;
	int transIndex; //0x8&lt;br /&gt;
	int flags; //0xC&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct objective_t&lt;br /&gt;
{&lt;br /&gt;
  objectiveState_t state;&lt;br /&gt;
  vec3_t origin;&lt;br /&gt;
  __int16 entNum;&lt;br /&gt;
  vec2_t size;&lt;br /&gt;
  int icon;&lt;br /&gt;
  __int16 ownerNum;&lt;br /&gt;
  unsigned __int16 name;&lt;br /&gt;
  __int16 teamMask;&lt;br /&gt;
  char progress;&lt;br /&gt;
  int clientUseMask[1];&lt;br /&gt;
  char gamemodeFlags;&lt;br /&gt;
  char flags;&lt;br /&gt;
  char teamNum;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct PlayerHeldWeapon&lt;br /&gt;
{&lt;br /&gt;
  int weapon;&lt;br /&gt;
  int options;&lt;br /&gt;
  float heatPercent;&lt;br /&gt;
  int fuelTankTime;&lt;br /&gt;
  int adsZoomSelect;&lt;br /&gt;
  bool overHeating;&lt;br /&gt;
  bool needsRechamber;&lt;br /&gt;
  bool heldBefore;&lt;br /&gt;
  bool quickReload;&lt;br /&gt;
  bool blockWeaponPickup;&lt;br /&gt;
  char model;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct AmmoPool&lt;br /&gt;
{&lt;br /&gt;
  int count;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct AmmoClip&lt;br /&gt;
{&lt;br /&gt;
  int count;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct playerState_s&lt;br /&gt;
{&lt;br /&gt;
	int commandTime;//0x0&lt;br /&gt;
	int pm_type;//0x4&lt;br /&gt;
	int bobCycle; //0x8&lt;br /&gt;
	int pm_flags; //0xC&lt;br /&gt;
	long long weapFlags;//0x10&lt;br /&gt;
	int otherFlags;//0x18&lt;br /&gt;
	int pm_time;//0x1C&lt;br /&gt;
	unsigned int loopSoundId;//0x20&lt;br /&gt;
	int loopSoundFade;//0x24&lt;br /&gt;
	vec3_t origin;//0x28&lt;br /&gt;
	vec3_t velocity;//0x34&lt;br /&gt;
	int remoteEyesEnt; //0x40&lt;br /&gt;
	int remoteEyesTagnam; //0x44&lt;br /&gt;
	int remoteControlEnt; //0x48&lt;br /&gt;
	int weaponTime;//0x4C&lt;br /&gt;
	int weaponDelay;//0x50&lt;br /&gt;
	int weaponTimeLeft;//0x54&lt;br /&gt;
	int weaponDelayLeft;//0x58&lt;br /&gt;
	int weaponIdleTime;//0x5C&lt;br /&gt;
	int grenadeTimeLeft;//0x60&lt;br /&gt;
	int throwBackGrenadeOwner;//0x64&lt;br /&gt;
	int throwBackGrenadeTimeLeft;//0x68&lt;br /&gt;
	int weaponRestrictKickTime;//0x6C&lt;br /&gt;
	bool mountAvailable;//0x70&lt;br /&gt;
	bool bRunLeftGun;//0x71&lt;br /&gt;
	bool bCarryingTurret;//0x72&lt;br /&gt;
	float mountPos[3];//0x74&lt;br /&gt;
	float mountDir;//0x80&lt;br /&gt;
	bool bThirdPerson;//0x84&lt;br /&gt;
	int foliageSoundTime;//0x88&lt;br /&gt;
	int gravity;//0x8C&lt;br /&gt;
	float leanf;//0x90&lt;br /&gt;
	int speed;//0x94&lt;br /&gt;
	float delta_angles[3];//0x98&lt;br /&gt;
	int groundEntityNum;//0xA4&lt;br /&gt;
	int moverEntityNum;//0xA8&lt;br /&gt;
	int moverTimestamp;//0xAC&lt;br /&gt;
	int groundType;//0xB0&lt;br /&gt;
	float vLadderVec[3];//0xB4&lt;br /&gt;
	int jumpTime;//0xC0&lt;br /&gt;
	float jumpOriginZ;//0xC4&lt;br /&gt;
	int slideTime;//0xC8&lt;br /&gt;
	int moveType;//0xCC&lt;br /&gt;
	int legsTimer;//0xD0&lt;br /&gt;
	int torsoTimer;//0xD4&lt;br /&gt;
	short legsAnim;//0xD8&lt;br /&gt;
	short torsoAnim;//0xDA&lt;br /&gt;
	int legsAnimDuration;//0xE0&lt;br /&gt;
	int torsoAnimDuration&lt;br /&gt;
	int damageTimer;//0xE4&lt;br /&gt;
	int damageDuration;//0xE8&lt;br /&gt;
	int dmgDirection;//0xEC&lt;br /&gt;
	int dmgType;//0xF0&lt;br /&gt;
	int corpseIndex;//0xF4&lt;br /&gt;
	int movementDir;//0xF8&lt;br /&gt;
	int eFlags;//0xFC&lt;br /&gt;
	int eFlags2;//0x100&lt;br /&gt;
	PlayerVehicleState vehicleState;//0x104&lt;br /&gt;
	short predictableEventSequence;//0x158&lt;br /&gt;
	short predictableEventSequenceOld;//0x15A&lt;br /&gt;
	int predictableEvents[4];//0x15C&lt;br /&gt;
	unsigned int predictableEventParms[4];//0x16C&lt;br /&gt;
	short unpredictableEventSequence; //0x17C&lt;br /&gt;
	short oldUnpredictableEventSequence;//0x17E&lt;br /&gt;
	int unpredictableEvents[4];//0x180&lt;br /&gt;
	unsigned int unpredictableEventParms[4];//0x190&lt;br /&gt;
	int clientNum;//0x1A0&lt;br /&gt;
	int offHandWeapon;//0x1A4&lt;br /&gt;
	int offhandSecondary;//0x1A8&lt;br /&gt;
	int offhandPrimary;//0x1AC&lt;br /&gt;
	int renderOptions;//0x1B0&lt;br /&gt;
	int momentum;//0x1B4&lt;br /&gt;
	int weapon;//0x1B8&lt;br /&gt;
	int lastStandPrevWeapon;//0x1BC&lt;br /&gt;
	int lastWeaponAltModeSwitch;//0x1C0&lt;br /&gt;
	int stowedWeapon;//0x1C4&lt;br /&gt;
	char unusedCompatibilityPadding;//0x1C8&lt;br /&gt;
	unsigned int meleeWeapon;//0x1CC&lt;br /&gt;
	int weaponstate;//0x1D0&lt;br /&gt;
	int weaponstateLeft;//0x1D4&lt;br /&gt;
	unsigned int weaponShotCount;//0x1D8&lt;br /&gt;
	unsigned int weaponShotCountLeft;//0x1DC&lt;br /&gt;
	float fWeaponPosFrac;//0x1E0&lt;br /&gt;
	int adsDelayTime;//0x1E4&lt;br /&gt;
	int spreadOverride;//0x1E8&lt;br /&gt;
	int spreadOverrideState;//0x1EC&lt;br /&gt;
	float weaponSpinLerp;//0x1F0&lt;br /&gt;
	int viewmodelIndex;//0x1F4&lt;br /&gt;
	float viewangles[3];//0x1F8&lt;br /&gt;
	int viewHeightTarget;//0x204&lt;br /&gt;
	float viewHeightCurrent;//0x208&lt;br /&gt;
	int viewHeightLerpTime;//0x20C&lt;br /&gt;
	int viewHeightLerpTarget;//0x210&lt;br /&gt;
	int viewHeightLerpDown;//0x214&lt;br /&gt;
	float viewAngleClampBase[2];//0x218&lt;br /&gt;
	float viewAngleClampRange[2];//0x220&lt;br /&gt;
	int damageEvent;//0x228&lt;br /&gt;
	int damageYaw;//0x22C&lt;br /&gt;
	int damagePitch;//0x230&lt;br /&gt;
	int damageCount;//0x234&lt;br /&gt;
	int stats[4];&lt;br /&gt;
	PlayerHeldWeapon heldWeapon[0xF];//0x248&lt;br /&gt;
	AmmoPool ammo[0xF];//0x3EC&lt;br /&gt;
	AmmoClip ammoClip[0xF];//0x428&lt;br /&gt;
	float proneDirection;//0x464&lt;br /&gt;
	float proneDirectionPitch;//0x468&lt;br /&gt;
	float proneTorsoPitch;//0x46C&lt;br /&gt;
	int viewlocked;//0x470&lt;br /&gt;
	short viewlocked_entNum;//0x474&lt;br /&gt;
	int vehiclePos;//0x478&lt;br /&gt;
	int vehicleType;//0x47C&lt;br /&gt;
	int vehicleAnimBoneIndex;//0x480&lt;br /&gt;
	int linkFlags;//0x484&lt;br /&gt;
	float linkAngles[3];//0x488&lt;br /&gt;
	int cursorHint;//0x494&lt;br /&gt;
	int cursorHintString;//0x498&lt;br /&gt;
	int cursorHintEntIndex;//0x49C&lt;br /&gt;
	int cursorHintWeapon;//0x4A0&lt;br /&gt;
	int iCompassPlayerInfo;//0x4A4&lt;br /&gt;
	unsigned int spyplaneTypeEnabled;//0x4A8&lt;br /&gt;
	unsigned int satelliteTypeEnabled;//0x4AC&lt;br /&gt;
	int locationSelectionInfo;//0x4B0&lt;br /&gt;
	int locationSelectionType;//0x4B4&lt;br /&gt;
	SprintState sprintState; //0x4B8&lt;br /&gt;
	float lastDtpEnd;//0x4D4&lt;br /&gt;
	float fTorsoPitch;//0x4D8&lt;br /&gt;
	float fWaistPitch;//0x4DC&lt;br /&gt;
	float holdBreathScale;//0x4E0&lt;br /&gt;
	int holdBreathTimer;//0x4E4&lt;br /&gt;
	int chargeShotTimer;//0x4E8&lt;br /&gt;
	int chargeShotLevel;//0x4EC&lt;br /&gt;
	int shotsFiredFromChamber;//0x4F0&lt;br /&gt;
	float quickScopeScale;//0x4F4&lt;br /&gt;
	int quickScopeTimer;//0x4F8&lt;br /&gt;
	int clientFields;//0x4FC&lt;br /&gt;
	int clientFields2;//0x500&lt;br /&gt;
	int clientFields3;//0x504&lt;br /&gt;
	int entityStateClientFields;//0x508&lt;br /&gt;
	float moveSpeedScaleMultiplier;//0x50C&lt;br /&gt;
	MantleState mantleState;//0x510&lt;br /&gt;
	int vehicleAnimStage;//0x520&lt;br /&gt;
	int vehicleEntryPoint;//0x524&lt;br /&gt;
	unsigned int scriptedAnim;//0x528&lt;br /&gt;
	int scriptedAnimTime;//0x52C&lt;br /&gt;
	int meleeChargeEnt;//0x530&lt;br /&gt;
	int meleeChargeDist;//0x534&lt;br /&gt;
	int meleeChargeTime;//0x538&lt;br /&gt;
	int weapLockFlags;//0x53C&lt;br /&gt;
	int weapLockedEntnum;//0x540&lt;br /&gt;
	unsigned int airburstMarkDistance;//0x544&lt;br /&gt;
	unsigned int perks[2];//0x548&lt;br /&gt;
	int actionSlotType[4];//0x550&lt;br /&gt;
	int actionSlotParam[4];//0x560&lt;br /&gt;
	int inventoryWeapon;//0x570&lt;br /&gt;
	short wiiumoteAimX;//0x574&lt;br /&gt;
	short wiiumoteAimY;//0x576&lt;br /&gt;
	char wiiuControllerType;//0x578&lt;br /&gt;
	char vehicleDefIndex;//0x579&lt;br /&gt;
	int entityEventSequence;//0x57C&lt;br /&gt;
	int weapAnim;//0x580&lt;br /&gt;
	int weapAnimLeft;//0x584&lt;br /&gt;
	float aimSpreadScale;//0x588&lt;br /&gt;
	int shellshockIndex;//0x58C&lt;br /&gt;
	int shellshockTime;//0x590&lt;br /&gt;
	int shellshockDuration;//0x594&lt;br /&gt;
	float dofNearStart;//0x598&lt;br /&gt;
	float dofNearEnd;//0x59C&lt;br /&gt;
	float dofFarStart;//0x5A0&lt;br /&gt;
	float dofFarEnd;//0x5A4&lt;br /&gt;
	float dofNearBlur;//0x5A8&lt;br /&gt;
	float dofFarBlur;//0x5AC&lt;br /&gt;
	float dofViewmodelStart;//0x5B0&lt;br /&gt;
	float dofViewmodelEnd;//0x5B4&lt;br /&gt;
		char unk12[0xC];//0x5B8&lt;br /&gt;
	int adsZoomSelect;//0x5C4&lt;br /&gt;
	int adsZoomLatchTime;//0x5C8&lt;br /&gt;
	bool adsZoomLatchState;//0x5CC&lt;br /&gt;
	int adsPrevZoomSelect;//0x5D0&lt;br /&gt;
	int adsPrevZoomSelectTime;//0x5D4&lt;br /&gt;
	int artilleryInboundIconLocation;//0x5D8&lt;br /&gt;
	float visionSetLerpRatio;//0x5DC&lt;br /&gt;
	int poisoned;//0x5E0&lt;br /&gt;
	int binoculars;//0x5E4&lt;br /&gt;
	int scriptCursorHintString; //0x5E8&lt;br /&gt;
	objective_t objective[32];&lt;br /&gt;
	int deltaTime; //0xBEC&lt;br /&gt;
	int killCamEntity; //0xBF0&lt;br /&gt;
	int killCamTargetEntity; //0xBF4&lt;br /&gt;
	int introShotsFired; //0xBF8&lt;br /&gt;
	struct&lt;br /&gt;
	{&lt;br /&gt;
		hudelem_s current[31]; //0xBFC&lt;br /&gt;
		hudelem_s archival[31]; //0x1B00&lt;br /&gt;
	}hud;&lt;br /&gt;
	char unknown15[0xC]; // most likely padding&lt;br /&gt;
};	// 0x2A10&lt;br /&gt;
&lt;br /&gt;
struct button_t&lt;br /&gt;
{&lt;br /&gt;
	int buttons;&lt;br /&gt;
	int buttons2; // can someone explain this ?&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct usercmd_s&lt;br /&gt;
{&lt;br /&gt;
	int serverTime; //0x0&lt;br /&gt;
	button_t button_bits; //0x4&lt;br /&gt;
	int angles[3]; //0xC&lt;br /&gt;
	int weapon; // 0x18&lt;br /&gt;
	int offHandWeapon; //0x1C&lt;br /&gt;
	int lastWeaponAltModeSwitch; //0x20&lt;br /&gt;
	char forwardmove; //0x24&lt;br /&gt;
	char rightmove; //0x25&lt;br /&gt;
	char upmove; //0x26&lt;br /&gt;
	char forwardlook; //0x27&lt;br /&gt;
	char rightlook; //0x28&lt;br /&gt;
	char uplook; //0x29&lt;br /&gt;
		char unk2[0x12]; //0x2A&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct playerTeamState_t&lt;br /&gt;
{&lt;br /&gt;
	int location;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
union val64&lt;br /&gt;
{&lt;br /&gt;
	__int64 value&lt;br /&gt;
	struct&lt;br /&gt;
	{&lt;br /&gt;
		int high; //0x0&lt;br /&gt;
		int low; //0x4&lt;br /&gt;
	};&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct score_s&lt;br /&gt;
{&lt;br /&gt;
  int ping;&lt;br /&gt;
  int status_icon;&lt;br /&gt;
  int place;&lt;br /&gt;
  int score;&lt;br /&gt;
  int kills;&lt;br /&gt;
  int assists;&lt;br /&gt;
  int deaths;&lt;br /&gt;
  int wagerWinnings;&lt;br /&gt;
  int scoreboardColumns[5];&lt;br /&gt;
  int downs;&lt;br /&gt;
  int revives;&lt;br /&gt;
  int headshots;&lt;br /&gt;
  int scoreMultiplier;&lt;br /&gt;
  int currentStreak;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct clientState_s&lt;br /&gt;
{&lt;br /&gt;
	int clientIndex; //0x0&lt;br /&gt;
	team_t team; //0x4&lt;br /&gt;
	team_t ffaTeam; //0x8&lt;br /&gt;
	int modelindex; //0xC&lt;br /&gt;
	int riotShieldNext; //0x10&lt;br /&gt;
	int attachModelIndex[6]; //0x14&lt;br /&gt;
	int attachTagIndex[6]; //0x2C&lt;br /&gt;
	char name[0x20]; //0x44&lt;br /&gt;
	float maxSprintTimeMultiplier; //0x64&lt;br /&gt;
	int rank; //0x68&lt;br /&gt;
	union&lt;br /&gt;
	{&lt;br /&gt;
		int prestige;&lt;br /&gt;
		int lastDaysPlayed;&lt;br /&gt;
	};&lt;br /&gt;
	int lastDamageTime; //0x70&lt;br /&gt;
	int lastStandStartTime; //0x74&lt;br /&gt;
	int turnedHumanTime; //0x78&lt;br /&gt;
	int beingRevived; //0x7C&lt;br /&gt;
	val64 xuid64; //0x80&lt;br /&gt;
	val64 leagueTeamID64; //0x88&lt;br /&gt;
	int leagueDivisionID; //0x90&lt;br /&gt;
	val64 leagueSubdivisionID64; //0x98&lt;br /&gt;
	int leagueSubdivisionRank; //0xA0&lt;br /&gt;
	unsigned int perks[2]; //0xA4&lt;br /&gt;
	int voiceConnectivityBits; //0xAC&lt;br /&gt;
	char clanAbbrev[8]; //0xB0&lt;br /&gt;
	int attachedVehEntNum; //0xB8&lt;br /&gt;
	int attachedVehSeat; //0xBC&lt;br /&gt;
	int needsRevive; //0xC0&lt;br /&gt;
	int clanAbbrevEV; //0xC4&lt;br /&gt;
	int vehAnimState; //0xC8&lt;br /&gt;
	score_s score; //0xCC&lt;br /&gt;
	int clientUIVisibilityFlags; //0x114&lt;br /&gt;
	int offhandWeaponVisible; //0x118&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct clientSession_t&lt;br /&gt;
{&lt;br /&gt;
	sessionState_t sessionState; //0x0&lt;br /&gt;
	int forceSpectatorClient; //0x4&lt;br /&gt;
	int killcamEntity; //0x8&lt;br /&gt;
	int killcamTargetEntity; //0xC&lt;br /&gt;
	int archiveTime; //0x10&lt;br /&gt;
	unsigned short scriptPersId; //0x14&lt;br /&gt;
	clientConnected_t connected; //0x18&lt;br /&gt;
	usercmd_s cmd; //0x1C&lt;br /&gt;
	usercmd_s oldcmd; // 0x58&lt;br /&gt;
	int localClient; //0x94 not sure&lt;br /&gt;
	int predictItemPickup; //0x98 not sure&lt;br /&gt;
	char newnetname[0x20]; //0x9C&lt;br /&gt;
	int maxHealth; //0xBC&lt;br /&gt;
	int enterTime; //0xC0 not sure&lt;br /&gt;
	playerTeamState_t teamState; //0xC4 not sure&lt;br /&gt;
	int voteCount; //0xC8 not sure&lt;br /&gt;
	int teamVoteCount; //0xCC not sure&lt;br /&gt;
	float moveSpeedScaleMultiplier; //0xD0&lt;br /&gt;
	int viewmodelIndex; //0xD4&lt;br /&gt;
	int noSpectate; //0xD8 not sure&lt;br /&gt;
	int teamInfo; //0xDC not sure&lt;br /&gt;
	clientState_s cs; //0xE0&lt;br /&gt;
	int psOffsetTime; //0x200&lt;br /&gt;
	int scoreboardColumnCache[26];&lt;br /&gt;
};	// 0x26C&lt;br /&gt;
&lt;br /&gt;
struct viewClamp&lt;br /&gt;
{&lt;br /&gt;
  vec2_t start;&lt;br /&gt;
  vec2_t current;&lt;br /&gt;
  vec2_t goal;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct viewClampState&lt;br /&gt;
{&lt;br /&gt;
  viewClamp min;&lt;br /&gt;
  viewClamp max;&lt;br /&gt;
  float accelTime;&lt;br /&gt;
  float decelTime;&lt;br /&gt;
  float totalTime;&lt;br /&gt;
  float startTime;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct gclient_s&lt;br /&gt;
{&lt;br /&gt;
	playerState_s ps; //0x0&lt;br /&gt;
	playerState_s lastPlayerPS;&lt;br /&gt;
	clientSession_t sess; //0x5420&lt;br /&gt;
		char unk1[4]; //0x568C padding?&lt;br /&gt;
	int spectatorClient; //0x5690&lt;br /&gt;
	int flags; //0x5694&lt;br /&gt;
	int lastCmdTime; //0x5698&lt;br /&gt;
	button_t button_bits; //0x569C&lt;br /&gt;
	button_t oldbutton_bits; //0x56A4&lt;br /&gt;
	button_t latched_button_bits; //0x56AC&lt;br /&gt;
	button_t button_bitsSinceLastFrame; //0x56B4&lt;br /&gt;
	float fGunPitch; //0x56BC&lt;br /&gt;
	float fGunYaw; //0x56C0&lt;br /&gt;
	int damage_blood; //0x56C4&lt;br /&gt;
	float damage_from[3]; //0x56C8&lt;br /&gt;
	int damage_fromWorld; //0x56D4&lt;br /&gt;
	int inactivityTime; //0x56D8&lt;br /&gt;
	int inactivityWarning; //0x56DC&lt;br /&gt;
	int lastVoiceTime; //0x56E0&lt;br /&gt;
	int outWaterTime; //0x56E4&lt;br /&gt;
	int switchSeatTime; //0x56E8&lt;br /&gt;
	float currentAimSpreadScale; //0x56EC&lt;br /&gt;
	int dropWeaponTime; //0x56F0&lt;br /&gt;
	EntHandle pLookatEnt; //0x56F4&lt;br /&gt;
	vec4_t prevLinkedInvQuat; //0x56F8&lt;br /&gt;
	bool prevLinkAnglesSet; //0x5708&lt;br /&gt;
	bool link_doCollision; //0x5709&lt;br /&gt;
	bool link_useTagAnglesForViewAngles; //0x570A&lt;br /&gt;
	bool link_useBaseAnglesForViewClamp; //0x570B&lt;br /&gt;
	float linkAnglesFrac; //0x570C&lt;br /&gt;
	ViewClampState link_viewClamp;&lt;br /&gt;
	EntHandle useHoldEntity;&lt;br /&gt;
	int useButtonDone; //0x5758&lt;br /&gt;
	int iLastCompassPlayerInfoEnt; //0x575C&lt;br /&gt;
	int compassPingTime; //0x5760&lt;br /&gt;
	int damageTime; // 0x5764&lt;br /&gt;
	float v_dmg_roll; // 0x5768&lt;br /&gt;
	float v_dmg_pitch; // 0x576C&lt;br /&gt;
	vec3_t swayViewAngles; // 0x5770&lt;br /&gt;
	vec3_t swayOffset; // 0x577C&lt;br /&gt;
	vec3_t swayAngles; // 0x5788&lt;br /&gt;
	vec3_t baseAngles; // 0x5794&lt;br /&gt;
	vec3_t baseOrigin; // 0x57A0&lt;br /&gt;
	vec3_t recoilAngles; // 0x57AC&lt;br /&gt;
	float fLastIdleFactor; // 0x57B8&lt;br /&gt;
	int weaponIdleTime; // 0x57BC&lt;br /&gt;
	vec3_t recoilSpeed; // 0x57C0&lt;br /&gt;
	int previousRecoilTime; // 0x57CC&lt;br /&gt;
	float previousRecoilRatio; // 0x57D0&lt;br /&gt;
	int lastServerTime; // 0x57D4&lt;br /&gt;
	int lastSpawnTime; // 0x57D8&lt;br /&gt;
	int lastWeapon; // 0x57DC&lt;br /&gt;
	bool previouslyFiring; // 0x57E0&lt;br /&gt;
	bool previouslyUsingNightVision; // 0x57E1&lt;br /&gt;
	bool previouslyDTP; // 0x57E2&lt;br /&gt;
	bool previouslyBeganWeaponRaise; // 0x57E3&lt;br /&gt;
	bool previouslySprinting; // 0x57E4&lt;br /&gt;
	int hasSpyplane; //0x57E8&lt;br /&gt;
	int hasSatellite; //0x57EC&lt;br /&gt;
	int revive; //0x57F0&lt;br /&gt;
	int reviveTime; // 0x57F4&lt;br /&gt;
	int disallowVehicleUsage; // 0x57F8&lt;br /&gt;
	unsigned short attachShieldTagName; // 0x57FC&lt;br /&gt;
	int lastStand; //0x5800&lt;br /&gt;
	int lastStandTime; //0x5804&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>Therifboy</name></author>
	</entry>
	<entry>
		<id>https://codresearch.dev/index.php?title=ScriptFile_Asset&amp;diff=777</id>
		<title>ScriptFile Asset</title>
		<link rel="alternate" type="text/html" href="https://codresearch.dev/index.php?title=ScriptFile_Asset&amp;diff=777"/>
		<updated>2014-12-27T14:01:31Z</updated>

		<summary type="html">&lt;p&gt;Therifboy: /* Field IDs */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
[[Category:Assets]]&lt;br /&gt;
[[Category:MW3]]&lt;br /&gt;
[[Category:Ghosts]]&lt;br /&gt;
The scriptfile asset is used on Modern Warfare 3, Ghosts, and Advanced Warfare. It is Infinity Ward&#039;s attempt at protecting their game scripts from being modified. Compared to Treyarch&#039;s scriptparsetree, the scriptfile gives away less information on identifying which game script file it originated from. All unnecessary strings have been removed and file names have even been renamed as number id&#039;s.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
struct ScriptFile&lt;br /&gt;
{&lt;br /&gt;
  const char *name;&lt;br /&gt;
  int compressedLen;&lt;br /&gt;
  int len;&lt;br /&gt;
  int bytecodeLen;&lt;br /&gt;
  const char *buffer;&lt;br /&gt;
  char *bytecode;&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
=== Data Section ===&lt;br /&gt;
The data section is a zlib compressed section in which the compressed size is equal to deflatedSize and it&#039;s uncompressed size is equal to inflatedSize.&lt;br /&gt;
&lt;br /&gt;
This section of data is not needed during runtime. Before being executed, the linker runs through the code once and links the data and code section together so that all programs can be ran as one. It contains strings and function call info.&lt;br /&gt;
&lt;br /&gt;
In order to be linked correctly, the code and data section must be read synchronously (e.g. when reading the OP_GetString opcode, the data pointer must be pointing to the string ready to be loaded). The linker does this by incrementing the data pointer each time it reads an opcode that uses it.&lt;br /&gt;
&lt;br /&gt;
At the beginning of each function, the linker loads a 32 bit value, which is the length of the function in the program section. Then it loads a 16 bit value which is the function id. If the id is equal to zero, then it will load a string after it, which is the name of the function. After this, the opcodes may begin to use the data section. The opcodes that use the data section are OP_GetAnimTree, OP_GetString, OP_GetIString, OP_GetAnimation, OP_GetFarFunction, OP_EvalLevelFieldVariable, OP_EvalAnimFieldVariable, OP_EvalSelfFieldVariable, OP_EvalFieldVariable, OP_EvalLevelFieldVariableRef, OP_EvalAnimFieldVariableRef, OP_EvalSelfFieldVariableRef, OP_EvalFieldVariableRef, OP_ClearFieldVariable, OP_SetLevelFieldVariableField, OP_SetSelfFieldVariableField, all the far call opcodes, and OP_endswitch.&lt;br /&gt;
&lt;br /&gt;
=== Code Section ===&lt;br /&gt;
The code section is the actual compiled game script code. &lt;br /&gt;
== Operation Codes ==&lt;br /&gt;
=== Modern Warfare 3 ===&lt;br /&gt;
==== XBOX &amp;amp; PS3 ====&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#define OP_End					0&lt;br /&gt;
#define OP_Return				1&lt;br /&gt;
#define OP_GetUndefined			2&lt;br /&gt;
#define OP_GetZero				3&lt;br /&gt;
#define OP_GetByte				4&lt;br /&gt;
#define OP_GetAnimTree				5&lt;br /&gt;
#define OP_GetNegByte			6&lt;br /&gt;
#define OP_GetUnsignedShort		7&lt;br /&gt;
#define OP_GetNegUnsignedShort	8&lt;br /&gt;
#define OP_GetInteger			9&lt;br /&gt;
#define OP_GetBuiltinFunction			0xA&lt;br /&gt;
#define OP_GetBuiltinMethod			0xB&lt;br /&gt;
#define OP_GetFloat				0xC&lt;br /&gt;
#define OP_GetString			0xD&lt;br /&gt;
#define OP_GetIString			0xE&lt;br /&gt;
#define OP_GetVector			0xF&lt;br /&gt;
#define OP_GetLevelObject		0x10&lt;br /&gt;
#define OP_GetAnimObject		0x11&lt;br /&gt;
#define OP_GetSelf				0x12&lt;br /&gt;
#define OP_GetThisthread			0x13&lt;br /&gt;
#define OP_GetLevel				0x14&lt;br /&gt;
#define OP_GetGame				0x15&lt;br /&gt;
#define OP_GetAnim				0x16&lt;br /&gt;
#define OP_GetAnimation			0x17&lt;br /&gt;
#define OP_GetGameRef			0x18&lt;br /&gt;
#define OP_GetLocalFunction			0x19&lt;br /&gt;
#define OP_GetFarFunction			0x1A&lt;br /&gt;
#define OP_CreateLocalVariable	0x1B&lt;br /&gt;
#define OP_RemoveLocalVariables	0x1C&lt;br /&gt;
#define OP_EvalLocalVariableCached0		0x1D&lt;br /&gt;
#define OP_EvalLocalVariableCached1		0x1E&lt;br /&gt;
#define OP_EvalLocalVariableCached2		0x1F&lt;br /&gt;
#define OP_EvalLocalVariableCached3		0x20&lt;br /&gt;
#define OP_EvalLocalVariableCached4		0x21&lt;br /&gt;
#define OP_EvalLocalVariableCached5		0x22&lt;br /&gt;
#define OP_EvalLocalVariableCached		0x23&lt;br /&gt;
#define OP_EvalLocalArrayCached			0x24&lt;br /&gt;
#define OP_EvalArray				0x25&lt;br /&gt;
#define OP_EvalLocalArrayRefCached0		0x26&lt;br /&gt;
#define OP_EvalNewLocalArrayRefCached0       	0x27&lt;br /&gt;
#define OP_EvalLocalArrayRefCached		0x28&lt;br /&gt;
#define OP_EvalArrayRef				0x29&lt;br /&gt;
#define OP_ClearArray				0x2A&lt;br /&gt;
#define OP_EmptyArray				0x2B&lt;br /&gt;
#define OP_AddArray				0x2C&lt;br /&gt;
#define OP_GetSelfObject			0x2D&lt;br /&gt;
#define OP_EvalLevelFieldVariable	0x2E&lt;br /&gt;
#define OP_EvalAnimFieldVariable	0x2F&lt;br /&gt;
#define OP_EvalSelfFieldVariable	0x30&lt;br /&gt;
#define OP_EvalFieldVariable		0x31&lt;br /&gt;
#define OP_EvalLevelFieldVariableRef 	0x32&lt;br /&gt;
#define OP_EvalAnimFieldVariableRef		0x33&lt;br /&gt;
#define OP_EvalSelfFieldVariableRef		0x34&lt;br /&gt;
#define OP_EvalFieldVariableRef			0x35&lt;br /&gt;
#define OP_ClearFieldVariable			0x36&lt;br /&gt;
#define OP_SafeCreateVariableFieldCached	0x37&lt;br /&gt;
#define OP_SafeSetVariableFieldCached0		0x38&lt;br /&gt;
#define OP_SafeSetVariableFieldCached		0x39&lt;br /&gt;
#define OP_SafeSetWaittillVariableFieldCached	0x3A&lt;br /&gt;
#define OP_clearparams				0x3B&lt;br /&gt;
#define OP_checkclearparams			0x3C&lt;br /&gt;
#define OP_EvalLocalVariableRefCached0				0x3D&lt;br /&gt;
// #define OP_opcode62				0x3E	// nop&lt;br /&gt;
#define OP_EvalLocalVariableRefCached	0x3F&lt;br /&gt;
#define OP_SetLevelFieldVariableField	0x40&lt;br /&gt;
#define OP_SetVariableField		0x41&lt;br /&gt;
// #define OP_opcode66			0x42	// nop&lt;br /&gt;
#define OP_SetAnimFieldVariableField	0x43&lt;br /&gt;
#define OP_SetSelfFieldVariableField	0x44&lt;br /&gt;
#define OP_SetLocalVariableFieldCached0		0x45&lt;br /&gt;
#define OP_SetNewLocalVariableFieldCached0		0x46&lt;br /&gt;
#define OP_SetLocalVariableFieldCached		0x47&lt;br /&gt;
#define OP_ClearLocalVariableFieldCached		0x48&lt;br /&gt;
#define OP_ClearLocalVariableFieldCached0		0x49&lt;br /&gt;
#define OP_CallBuiltin0		0x4A&lt;br /&gt;
#define OP_CallBuiltin1		0x4B&lt;br /&gt;
#define OP_CallBuiltin2		0x4C&lt;br /&gt;
#define OP_CallBuiltin3		0x4D&lt;br /&gt;
#define OP_CallBuiltin4		0x4E&lt;br /&gt;
#define OP_CallBuiltin5		0x4F&lt;br /&gt;
#define OP_CallBuiltin		0x50&lt;br /&gt;
#define OP_CallBuiltinMethod0	0x51&lt;br /&gt;
#define OP_CallBuiltinMethod1	0x52&lt;br /&gt;
#define OP_CallBuiltinMethod2	0x53&lt;br /&gt;
#define OP_CallBuiltinMethod3	0x54&lt;br /&gt;
#define OP_CallBuiltinMethod4	0x55&lt;br /&gt;
#define OP_CallBuiltinMethod5	0x56&lt;br /&gt;
#define OP_CallBuiltinMethod	0x57&lt;br /&gt;
#define OP_wait					0x58&lt;br /&gt;
#define OP_waittillFrameEnd		0x59&lt;br /&gt;
#define OP_PreScriptCall		0x5A&lt;br /&gt;
#define OP_ScriptLocalFunctionCall2	0x5B&lt;br /&gt;
#define OP_ScriptLocalFunctionCall	0x5C&lt;br /&gt;
#define OP_ScriptLocalMethodCall	0x5D&lt;br /&gt;
#define OP_ScriptLocalThreadCall			0x5E&lt;br /&gt;
#define OP_ScriptLocalChildThreadCall	0x5F&lt;br /&gt;
#define OP_ScriptLocalMethodThreadCall			0x60&lt;br /&gt;
#define OP_ScriptLocalMethodChildThreadCall			0x61&lt;br /&gt;
#define OP_ScriptFarFunctionCall2		0x62&lt;br /&gt;
#define OP_ScriptFarFunctionCall		0x63&lt;br /&gt;
#define OP_ScriptFarMethodCall	0x64&lt;br /&gt;
#define OP_ScriptFarThreadCall				0x65&lt;br /&gt;
#define OP_ScriptFarChildThreadCall		0x66&lt;br /&gt;
#define OP_ScriptFarMethodThreadCall			0x67&lt;br /&gt;
#define OP_ScriptFarMethodChildThreadCall			0x68&lt;br /&gt;
#define OP_ScriptFunctionCallPointer			0x69&lt;br /&gt;
#define OP_ScriptMethodCallPointer			0x6A&lt;br /&gt;
#define OP_ScriptThreadCallPointer			0x6B&lt;br /&gt;
 #define OP_ScriptMethodChildThreadCallPointer			0x6C&lt;br /&gt;
#define OP_ScriptMethodThreadCallPointer			0x6D&lt;br /&gt;
 #define OP_ScriptMethodChildThreadCallPointer			0x6E&lt;br /&gt;
 #define OP_CallBuiltinPointer			0x6F&lt;br /&gt;
 #define OP_CallBuiltinMethodPointer			0x70&lt;br /&gt;
#define OP_DecTop			0x71&lt;br /&gt;
#define OP_CastFieldObject			0x72&lt;br /&gt;
#define OP_EvalLocalVariableObjectCached			0x73&lt;br /&gt;
#define OP_CastBool			0x74&lt;br /&gt;
#define OP_BoolNot				0x75&lt;br /&gt;
#define OP_BoolComplement		0x76&lt;br /&gt;
#define OP_JumpOnFalse			0x77&lt;br /&gt;
#define OP_JumpOnTrue			0x78&lt;br /&gt;
#define OP_JumpOnFalseExpr		0x79&lt;br /&gt;
#define OP_JumpOnTrueExpr		0x7A&lt;br /&gt;
#define OP_jump				0x7B&lt;br /&gt;
#define OP_jumpback			0x7C&lt;br /&gt;
#define OP_inc				0x7D&lt;br /&gt;
#define OP_dec				0x7E&lt;br /&gt;
#define OP_bit_or			0x7F&lt;br /&gt;
#define OP_bit_ex_or		0x80&lt;br /&gt;
#define OP_bit_and			0x81&lt;br /&gt;
#define OP_equality			0x82&lt;br /&gt;
#define OP_inequality		0x83&lt;br /&gt;
#define OP_less				0x84&lt;br /&gt;
#define OP_greater			0x85&lt;br /&gt;
#define OP_less_equal		0x86&lt;br /&gt;
#define OP_greater_equal	0x87&lt;br /&gt;
#define OP_shift_left		0x88&lt;br /&gt;
#define OP_shift_right		0x89&lt;br /&gt;
#define OP_plus				0x8A&lt;br /&gt;
#define OP_minus			0x8B&lt;br /&gt;
#define OP_multiply			0x8C&lt;br /&gt;
#define OP_divide			0x8F&lt;br /&gt;
#define OP_mod				0x8E&lt;br /&gt;
#define OP_size				0x8F&lt;br /&gt;
#define OP_waittillmatch		0x90&lt;br /&gt;
#define OP_NOP				0x91&lt;br /&gt;
#define OP_waittill			0x92&lt;br /&gt;
#define OP_notify			0x93&lt;br /&gt;
#define OP_endon			0x94&lt;br /&gt;
#define OP_voidCodepos		0x95&lt;br /&gt;
#define OP_switch			0x96&lt;br /&gt;
#define OP_endswitch		0x97&lt;br /&gt;
#define OP_vector			0x98&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== PC ====&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#define OP_End	0x0&lt;br /&gt;
#define OP_Return	0x1&lt;br /&gt;
#define OP_GetByte	0x2&lt;br /&gt;
#define OP_GetNegByte	0x3&lt;br /&gt;
#define OP_GetUnsignedShort	0x4&lt;br /&gt;
#define OP_GetNegUnsignedShort	0x5&lt;br /&gt;
#define OP_GetInteger	0x6&lt;br /&gt;
#define OP_GetBuiltinFunction	0x7&lt;br /&gt;
#define OP_GetBuiltinMethod	0x8&lt;br /&gt;
#define OP_GetFloat	0x9&lt;br /&gt;
#define OP_GetString	0xA&lt;br /&gt;
#define OP_GetUndefined	0xB&lt;br /&gt;
#define OP_GetZero	0xC&lt;br /&gt;
#define OP_waittillFrameEnd		0xD&lt;br /&gt;
#define OP_CreateLocalVariable	0xE&lt;br /&gt;
#define OP_RemoveLocalVariables	0xF&lt;br /&gt;
#define OP_EvalLocalVariableCached0	0x10&lt;br /&gt;
#define OP_EvalLocalVariableCached1	0x11&lt;br /&gt;
#define OP_EvalLocalVariableCached2	0x12&lt;br /&gt;
#define OP_EvalLocalVariableCached3	0x13&lt;br /&gt;
#define OP_EvalLocalVariableCached4	0x14&lt;br /&gt;
#define OP_EvalLocalVariableCached5	0x15&lt;br /&gt;
#define OP_EvalLocalVariableCached	0x16&lt;br /&gt;
#define OP_EvalLocalArrayCached	0x17&lt;br /&gt;
#define OP_EvalArray	0x18&lt;br /&gt;
#define OP_EvalNewLocalArrayRefCached0	0x19&lt;br /&gt;
#define OP_EvalLocalArrayRefCached0	0x1A&lt;br /&gt;
#define OP_EvalLocalArrayRefCached	0x1B&lt;br /&gt;
#define OP_EvalArrayRef	0x1C&lt;br /&gt;
#define OP_ClearArray	0x1D&lt;br /&gt;
#define OP_EmptyArray	0x1E&lt;br /&gt;
#define OP_AddArray	0x1F&lt;br /&gt;
#define OP_PreScriptCall	0x20&lt;br /&gt;
#define OP_ScriptLocalFunctionCall2	0x21&lt;br /&gt;
#define OP_ScriptLocalFunctionCall	0x22&lt;br /&gt;
#define OP_ScriptLocalMethodCall	0x23&lt;br /&gt;
#define OP_ScriptLocalThreadCall	0x24&lt;br /&gt;
#define OP_ScriptLocalChildThreadCall	0x25&lt;br /&gt;
#define OP_ScriptLocalMethodThreadCall	0x26&lt;br /&gt;
 #define OP_ScriptLocalMethodChildThreadCall	0x27&lt;br /&gt;
#define OP_ScriptFarFunctionCall2	0x28&lt;br /&gt;
#define OP_ScriptFarFunctionCall	0x29&lt;br /&gt;
#define OP_ScriptFarMethodCall	0x2A&lt;br /&gt;
#define OP_ScriptFarThreadCall	0x2B&lt;br /&gt;
 #define OP_ScriptFarChildThreadCall	0x2C&lt;br /&gt;
#define OP_ScriptFarMethodThreadCall	0x2D&lt;br /&gt;
 #define OP_ScriptFarMethodChildThreadCall	0x2E&lt;br /&gt;
#define OP_ScriptFunctionCallPointer	0x2F&lt;br /&gt;
#define OP_ScriptMethodCallPointer		0x30&lt;br /&gt;
#define OP_ScriptThreadCallPointer		0x31&lt;br /&gt;
 #define OP_ScriptMethodChildThreadCallPointer					0x32&lt;br /&gt;
#define OP_ScriptMethodThreadCallPointer	0x33&lt;br /&gt;
#define OP_ScriptMethodChildThreadCallPointer	0x34&lt;br /&gt;
#define OP_CallBuiltinPointer	0x35&lt;br /&gt;
#define OP_CallBuiltinMethodPointer	0x36&lt;br /&gt;
#define OP_GetIString	0x37&lt;br /&gt;
#define OP_GetVector	0x38&lt;br /&gt;
#define OP_GetLevelObject	0x39&lt;br /&gt;
#define OP_GetAnimObject	0x3A&lt;br /&gt;
#define OP_GetSelf	0x3B&lt;br /&gt;
#define OP_GetThisthread	0x3C&lt;br /&gt;
#define OP_GetLevel	0x3D&lt;br /&gt;
#define OP_GetGame	0x3E&lt;br /&gt;
#define OP_GetAnim	0x3F&lt;br /&gt;
#define OP_GetAnimation	0x40&lt;br /&gt;
#define OP_GetGameRef	0x41&lt;br /&gt;
#define OP_inc	0x42&lt;br /&gt;
#define OP_dec	0x43&lt;br /&gt;
#define OP_bit_or	0x44&lt;br /&gt;
#define OP_JumpOnFalseExpr	0x45&lt;br /&gt;
#define OP_bit_ex_or	0x46&lt;br /&gt;
#define OP_bit_and	0x47&lt;br /&gt;
#define OP_equality	0x48&lt;br /&gt;
#define OP_inequality	0x49&lt;br /&gt;
#define OP_less	0x4A&lt;br /&gt;
#define OP_greater	0x4B&lt;br /&gt;
#define OP_JumpOnTrueExpr	0x4C&lt;br /&gt;
#define OP_less_equal	0x4D&lt;br /&gt;
#define OP_jumpback	0x4E&lt;br /&gt;
#define OP_NOP		0x4F&lt;br /&gt;
#define OP_waittill	0x50&lt;br /&gt;
#define OP_notify	0x51&lt;br /&gt;
#define OP_endon	0x52&lt;br /&gt;
#define OP_voidCodepos	0x53&lt;br /&gt;
#define OP_switch	0x54&lt;br /&gt;
#define OP_endswitch	0x55&lt;br /&gt;
#define OP_vector	0x56&lt;br /&gt;
#define OP_JumpOnFalse	0x57&lt;br /&gt;
#define OP_greater_equal	0x58&lt;br /&gt;
#define OP_shift_left	0x59&lt;br /&gt;
#define OP_shift_right	0x5A&lt;br /&gt;
#define OP_plus	0x5B&lt;br /&gt;
#define OP_jump	0x5C&lt;br /&gt;
#define OP_minus	0x5D&lt;br /&gt;
#define OP_multiply	0x5E&lt;br /&gt;
#define OP_divide	0x5F&lt;br /&gt;
#define OP_mod	0x60&lt;br /&gt;
#define OP_JumpOnTrue	0x61&lt;br /&gt;
#define OP_size	0x62&lt;br /&gt;
#define OP_waittillmatch	0x63&lt;br /&gt;
#define OP_GetLocalFunction	0x64&lt;br /&gt;
#define OP_GetFarFunction	0x65&lt;br /&gt;
#define OP_GetSelfObject	0x66&lt;br /&gt;
#define OP_EvalLevelFieldVariable	0x67&lt;br /&gt;
#define OP_EvalAnimFieldVariable	0x68&lt;br /&gt;
#define OP_EvalSelfFieldVariable	0x69&lt;br /&gt;
#define OP_EvalFieldVariable	0x6A&lt;br /&gt;
#define OP_EvalLevelFieldVariableRef	0x6B&lt;br /&gt;
#define OP_EvalAnimFieldVariableRef	0x6C&lt;br /&gt;
#define OP_EvalSelfFieldVariableRef	0x6D&lt;br /&gt;
#define OP_EvalFieldVariableRef	0x6E&lt;br /&gt;
#define OP_ClearFieldVariable	0x6F&lt;br /&gt;
#define OP_SafeCreateVariableFieldCached	0x70&lt;br /&gt;
#define OP_SafeSetVariableFieldCached0	0x71&lt;br /&gt;
#define OP_SafeSetVariableFieldCached		0x72&lt;br /&gt;
#define OP_SafeSetWaittillVariableFieldCached	0x73&lt;br /&gt;
#define OP_GetAnimTree	0x74&lt;br /&gt;
#define OP_clearparams	0x75&lt;br /&gt;
#define OP_checkclearparams				0x76&lt;br /&gt;
#define OP_EvalLocalVariableRefCached0	0x77&lt;br /&gt;
	// nop&lt;br /&gt;
#define OP_EvalLocalVariableRefCached	0x79&lt;br /&gt;
#define OP_SetLevelFieldVariableField	0x7A&lt;br /&gt;
#define OP_SetVariableField				0x7B&lt;br /&gt;
	// nop&lt;br /&gt;
#define OP_SetAnimFieldVariableField	0x7D&lt;br /&gt;
#define OP_SetSelfFieldVariableField	0x7E&lt;br /&gt;
#define OP_SetLocalVariableFieldCached0	0x7F&lt;br /&gt;
#define OP_SetNewLocalVariableFieldCached0		0x80&lt;br /&gt;
#define OP_SetLocalVariableFieldCached	0x81&lt;br /&gt;
#define OP_ClearLocalVariableFieldCached		0x82&lt;br /&gt;
#define OP_ClearLocalVariableFieldCached0		0x83&lt;br /&gt;
#define OP_CallBuiltin0	0x84&lt;br /&gt;
#define OP_CallBuiltin1	0x85&lt;br /&gt;
#define OP_CallBuiltin2	0x86&lt;br /&gt;
#define OP_CallBuiltin3	0x87&lt;br /&gt;
#define OP_CallBuiltin4	0x88&lt;br /&gt;
#define OP_CallBuiltin5	0x89&lt;br /&gt;
#define OP_CallBuiltin	0x8A&lt;br /&gt;
#define OP_CallBuiltinMethod0	0x8B&lt;br /&gt;
#define OP_CallBuiltinMethod1	0x8C&lt;br /&gt;
#define OP_CallBuiltinMethod2	0x8D&lt;br /&gt;
#define OP_CallBuiltinMethod3	0x8E&lt;br /&gt;
#define OP_CallBuiltinMethod4	0x8F&lt;br /&gt;
#define OP_CallBuiltinMethod5	0x90&lt;br /&gt;
#define OP_CallBuiltinMethod	0x91&lt;br /&gt;
#define OP_wait		0x92&lt;br /&gt;
#define OP_DecTop	0x93&lt;br /&gt;
#define OP_CastFieldObject	0x94&lt;br /&gt;
#define OP_EvalLocalVariableObjectCached 0x95&lt;br /&gt;
#define OP_CastBool	0x96&lt;br /&gt;
#define OP_BoolNot	0x97&lt;br /&gt;
#define OP_BoolComplement 0x98&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Ghosts ===&lt;br /&gt;
The opcodes for Ghosts do the exact same thing as the Modern Warfare 3 opcodes, only their values seem to be scrambled in some way.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#define OP_CastFieldObject			0x1D&lt;br /&gt;
#define OP_SetLocalVariableFieldCached	0x1E&lt;br /&gt;
#define OP_plus				0x1F&lt;br /&gt;
#define OP_RemoveLocalVariables		0x20&lt;br /&gt;
#define OP_EvalSelfFieldVariableRef	0x21&lt;br /&gt;
#define OP_ScriptFarMethodChildThreadCall	0x22&lt;br /&gt;
#define OP_GetGameRef			0x23&lt;br /&gt;
#define OP_EvalAnimFieldVariable	0x24&lt;br /&gt;
#define OP_EvalLevelFieldVariableRef	0x25&lt;br /&gt;
#define OP_GetThisthread		0x26&lt;br /&gt;
#define OP_greater		0x27&lt;br /&gt;
#define OP_waittillmatch	0x28&lt;br /&gt;
#define OP_shift_right		0x29&lt;br /&gt;
#define OP_dec			0x2A&lt;br /&gt;
#define OP_JumpOnTrue	0x2B&lt;br /&gt;
#define OP_bit_or	0x2C&lt;br /&gt;
#define OP_equality	0x2D&lt;br /&gt;
#define OP_ClearLocalVariableFieldCached0	0x2E&lt;br /&gt;
#define OP_notify	0x2F&lt;br /&gt;
#define OP_GetVector	0x30&lt;br /&gt;
#define OP_ScriptMethodChildThreadCallPointer	0x31&lt;br /&gt;
#define OP_voidCodepos	0x32&lt;br /&gt;
#define OP_GetByte	0x33&lt;br /&gt;
#define OP_ScriptFarMethodThreadCall		0x34&lt;br /&gt;
#define OP_SetSelfFieldVariableField	0x35&lt;br /&gt;
#define OP_JumpOnFalseExpr		0x36&lt;br /&gt;
#define OP_GetUndefined		0x37&lt;br /&gt;
#define OP_jumpback		0x38&lt;br /&gt;
#define OP_JumpOnTrueExpr	0x39&lt;br /&gt;
#define OP_CallBuiltin0		0x3A&lt;br /&gt;
#define OP_CallBuiltin1		0x3B&lt;br /&gt;
#define OP_CallBuiltin2		0x3C&lt;br /&gt;
#define OP_CallBuiltin3		0x3D&lt;br /&gt;
#define OP_CallBuiltin4		0x3E&lt;br /&gt;
#define OP_CallBuiltin5		0x3F&lt;br /&gt;
#define OP_CallBuiltin		0x40&lt;br /&gt;
#define OP_SetLocalVariableFieldCached0		0x41&lt;br /&gt;
#define OP_ClearFieldVariable	0x42&lt;br /&gt;
#define OP_GetLevel		0x43&lt;br /&gt;
#define OP_size			0x44&lt;br /&gt;
#define OP_SafeSetWaittillVariableFieldCached	0x45&lt;br /&gt;
#define OP_ScriptLocalThreadCall			0x46&lt;br /&gt;
#define OP_AddArray			0x47&lt;br /&gt;
#define OP_endon			0x48&lt;br /&gt;
#define OP_EvalFieldVariable		0x49&lt;br /&gt;
#define OP_shift_left			0x4A&lt;br /&gt;
#define OP_EvalLocalArrayRefCached0	0x4B&lt;br /&gt;
#define OP_Return			0x4C&lt;br /&gt;
#define OP_CreateLocalVariable		0x4D&lt;br /&gt;
#define OP_SafeSetVariableFieldCached0	0x4E&lt;br /&gt;
#define OP_GetBuiltinFunction		0x4F&lt;br /&gt;
#define OP_ScriptLocalMethodCall	0x50&lt;br /&gt;
#define OP_CallBuiltinMethodPointer			0x51&lt;br /&gt;
#define OP_ScriptLocalChildThreadCall		0x52&lt;br /&gt;
#define OP_GetSelfObject		0x53&lt;br /&gt;
#define OP_GetGame			0x54&lt;br /&gt;
#define OP_SetLevelFieldVariableField	0x55&lt;br /&gt;
#define OP_EvalArray			0x56&lt;br /&gt;
#define OP_GetSelf			0x57&lt;br /&gt;
#define OP_End				0x58&lt;br /&gt;
#define OP_EvalSelfFieldVariable	0x59&lt;br /&gt;
#define OP_less_equal			0x5A&lt;br /&gt;
#define OP_EvalLocalVariableCached0	0x5B&lt;br /&gt;
#define OP_EvalLocalVariableCached1	0x5C&lt;br /&gt;
#define OP_EvalLocalVariableCached2	0x5D&lt;br /&gt;
#define OP_EvalLocalVariableCached3	0x5E&lt;br /&gt;
#define OP_EvalLocalVariableCached4	0x5F&lt;br /&gt;
#define OP_EvalLocalVariableCached5	0x60&lt;br /&gt;
#define OP_EvalLocalVariableCached	0x61&lt;br /&gt;
#define OP_EvalNewLocalArrayRefCached0		0x62&lt;br /&gt;
#define OP_ScriptMethodChildThreadCallPointer		0x63&lt;br /&gt;
#define OP_EvalLocalVariableObjectCached		0x64&lt;br /&gt;
#define OP_ScriptLocalMethodThreadCall	0x65&lt;br /&gt;
#define OP_GetInteger		0x66&lt;br /&gt;
#define OP_ScriptMethodCallPointer		0x67&lt;br /&gt;
#define OP_checkclearparams	0x68&lt;br /&gt;
#define OP_SetAnimFieldVariableField	0x69&lt;br /&gt;
// nop&lt;br /&gt;
#define OP_minus  0x6B&lt;br /&gt;
#define OP_ScriptLocalFunctionCall2 0x6C&lt;br /&gt;
#define OP_GetNegUnsignedShort 0x6D&lt;br /&gt;
#define OP_GetNegByte		0x6E&lt;br /&gt;
#define OP_SafeCreateVariableFieldCached	0x6F&lt;br /&gt;
#define OP_greater_equal	0x70&lt;br /&gt;
#define OP_vector		0x71&lt;br /&gt;
#define OP_GetBuiltinMethod	0x72&lt;br /&gt;
#define OP_endswitch	0x73&lt;br /&gt;
#define OP_ClearArray	0x74&lt;br /&gt;
#define OP_DecTop	0x75&lt;br /&gt;
#define OP_CastBool	0x76&lt;br /&gt;
#define OP_EvalArrayRef	0x77&lt;br /&gt;
#define OP_SetNewLocalVariableFieldCached0		0x78&lt;br /&gt;
#define OP_GetZero			0x79&lt;br /&gt;
#define OP_wait				0x7A&lt;br /&gt;
#define OP_waittill			0x7B&lt;br /&gt;
#define OP_GetIString			0x7C&lt;br /&gt;
#define OP_ScriptFarFunctionCall	0x7D&lt;br /&gt;
#define OP_GetAnimObject		0x7E&lt;br /&gt;
#define OP_GetAnimTree			0x7F&lt;br /&gt;
#define OP_EvalLocalArrayCached		0x80&lt;br /&gt;
#define OP_mod				0x81&lt;br /&gt;
#define OP_ScriptFarThreadCall		0x82&lt;br /&gt;
#define OP_GetUnsignedShort		0x83&lt;br /&gt;
#define OP_clearparams		0x84&lt;br /&gt;
#define OP_ScriptMethodThreadCallPointer		0x85&lt;br /&gt;
#define OP_ScriptFunctionCallPointer		0x86&lt;br /&gt;
#define OP_EmptyArray		0x87&lt;br /&gt;
#define OP_SafeSetVariableFieldCached	0x88&lt;br /&gt;
// nop&lt;br /&gt;
#define OP_EvalFieldVariableRef		0x8A&lt;br /&gt;
#define OP_ScriptLocalMethodChildThreadCall	0x8B&lt;br /&gt;
// nop&lt;br /&gt;
#define OP_GetFloat			0x8D&lt;br /&gt;
#define OP_EvalLocalVariableRefCached	0x8E&lt;br /&gt;
#define OP_JumpOnFalse			0x8F&lt;br /&gt;
#define OP_BoolComplement		0x90&lt;br /&gt;
#define OP_ScriptThreadCallPointer			0x91&lt;br /&gt;
#define OP_ScriptFarFunctionCall2	0x92&lt;br /&gt;
#define OP_less				0x93&lt;br /&gt;
#define OP_BoolNot			0x94&lt;br /&gt;
#define OP_waittillFrameEnd		0x95&lt;br /&gt;
#define OP_GetString			0x96&lt;br /&gt;
#define OP_EvalLevelFieldVariable	0x97&lt;br /&gt;
#define OP_GetLevelObject	0x98&lt;br /&gt;
#define OP_inc			0x99&lt;br /&gt;
#define OP_CallBuiltinMethod0	0x9A&lt;br /&gt;
#define OP_CallBuiltinMethod1	0x9B&lt;br /&gt;
#define OP_CallBuiltinMethod2	0x9C&lt;br /&gt;
#define OP_CallBuiltinMethod3	0x9D&lt;br /&gt;
#define OP_CallBuiltinMethod4	0x9E&lt;br /&gt;
#define OP_CallBuiltinMethod5	0x9F&lt;br /&gt;
#define OP_CallBuiltinMethod	0xA0&lt;br /&gt;
#define OP_GetAnim		0xA1&lt;br /&gt;
#define OP_switch		0xA2&lt;br /&gt;
#define OP_SetVariableField	0xA3&lt;br /&gt;
#define OP_divide		0xA4&lt;br /&gt;
#define OP_GetLocalFunction		0xA5&lt;br /&gt;
#define OP_ScriptFarChildThreadCall	0xA6&lt;br /&gt;
#define OP_multiply			0xA7&lt;br /&gt;
#define OP_ClearLocalVariableFieldCached			0xA8&lt;br /&gt;
#define OP_EvalAnimFieldVariableRef	0xA9&lt;br /&gt;
#define OP_EvalLocalArrayRefCached	0xAA&lt;br /&gt;
#define OP_EvalLocalVariableRefCached0	0xAB&lt;br /&gt;
#define OP_bit_and			0xAC&lt;br /&gt;
#define OP_GetAnimation			0xAD&lt;br /&gt;
#define OP_GetFarFunction			0xAE&lt;br /&gt;
#define OP_CallBuiltinPointer			0xAF&lt;br /&gt;
#define OP_jump				0xB0&lt;br /&gt;
#define OP_PreScriptCall		0xB1&lt;br /&gt;
#define OP_ScriptFarMethodCall	0xB2&lt;br /&gt;
#define OP_inequality		0xB3&lt;br /&gt;
#define OP_ScriptLocalFunctionCall	0xB4&lt;br /&gt;
#define OP_bit_ex_or		0xB5&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Method List ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!rowspan=&amp;quot;2&amp;quot;|Method&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|MW3&lt;br /&gt;
|-&lt;br /&gt;
!PC ID&lt;br /&gt;
!PS3/XBOX ID&lt;br /&gt;
&amp;lt;!-- builtin --&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|attach&lt;br /&gt;
|0x8017&lt;br /&gt;
|0x8000&lt;br /&gt;
|-&lt;br /&gt;
|attachshieldmodel&lt;br /&gt;
|0x8018&lt;br /&gt;
|0x8001&lt;br /&gt;
|-&lt;br /&gt;
|detach&lt;br /&gt;
|0x8024&lt;br /&gt;
|0x8002&lt;br /&gt;
|-&lt;br /&gt;
|detachshieldmodel&lt;br /&gt;
|0x8025&lt;br /&gt;
|0x8003&lt;br /&gt;
|-&lt;br /&gt;
|moveshieldmodel&lt;br /&gt;
|0x8026&lt;br /&gt;
|0x8004&lt;br /&gt;
|-&lt;br /&gt;
|detachall&lt;br /&gt;
|0x8027&lt;br /&gt;
|0x8005&lt;br /&gt;
|-&lt;br /&gt;
|getattachsize&lt;br /&gt;
|0x8028&lt;br /&gt;
|0x8006&lt;br /&gt;
|-&lt;br /&gt;
|getattachmodelname&lt;br /&gt;
|0x8029&lt;br /&gt;
|0x8007&lt;br /&gt;
|-&lt;br /&gt;
|getattachtagname&lt;br /&gt;
|0x802a&lt;br /&gt;
|0x8008&lt;br /&gt;
|-&lt;br /&gt;
|getattachignorecollision&lt;br /&gt;
|0x8043&lt;br /&gt;
|0x8009&lt;br /&gt;
|-&lt;br /&gt;
|hidepart&lt;br /&gt;
|0x8044&lt;br /&gt;
|0x800a&lt;br /&gt;
|-&lt;br /&gt;
|allinstances&lt;br /&gt;
|0x8045&lt;br /&gt;
|0x800b&lt;br /&gt;
|-&lt;br /&gt;
|hideallparts&lt;br /&gt;
|0x8046&lt;br /&gt;
|0x800c&lt;br /&gt;
|-&lt;br /&gt;
|showpart&lt;br /&gt;
|0x8047&lt;br /&gt;
|0x800d&lt;br /&gt;
|-&lt;br /&gt;
|showallparts&lt;br /&gt;
|0x8048&lt;br /&gt;
|0x800e&lt;br /&gt;
|-&lt;br /&gt;
|linkto&lt;br /&gt;
|0x8049&lt;br /&gt;
|0x800f&lt;br /&gt;
|-&lt;br /&gt;
|linktoblendtotag&lt;br /&gt;
|0x804a&lt;br /&gt;
|0x8010&lt;br /&gt;
|-&lt;br /&gt;
|unlink&lt;br /&gt;
|0x804b&lt;br /&gt;
|0x8011&lt;br /&gt;
|-&lt;br /&gt;
|islinked&lt;br /&gt;
|0x8063&lt;br /&gt;
|0x8012&lt;br /&gt;
|-&lt;br /&gt;
|enablelinkto&lt;br /&gt;
|0x8064&lt;br /&gt;
|0x8013&lt;br /&gt;
|-&lt;br /&gt;
|playerlinkto&lt;br /&gt;
|0x8075&lt;br /&gt;
|0x8014&lt;br /&gt;
|-&lt;br /&gt;
|playerlinktodelta&lt;br /&gt;
|0x8076&lt;br /&gt;
|0x8015&lt;br /&gt;
|-&lt;br /&gt;
|playerlinkweaponviewtodelta&lt;br /&gt;
|0x8077&lt;br /&gt;
|0x8016&lt;br /&gt;
|-&lt;br /&gt;
|playerlinktoabsolute&lt;br /&gt;
|0x8078&lt;br /&gt;
|0x8017&lt;br /&gt;
|-&lt;br /&gt;
|playerlinktoblend&lt;br /&gt;
|0x8079&lt;br /&gt;
|0x8018&lt;br /&gt;
|-&lt;br /&gt;
|playerlinkedoffsetenable&lt;br /&gt;
|0x807a&lt;br /&gt;
|0x8019&lt;br /&gt;
|-&lt;br /&gt;
|playerlinkedoffsetdisable&lt;br /&gt;
|0x8094&lt;br /&gt;
|0x801a&lt;br /&gt;
|-&lt;br /&gt;
|playerlinkedsetviewznear&lt;br /&gt;
|0x8095&lt;br /&gt;
|0x801b&lt;br /&gt;
|-&lt;br /&gt;
|playerlinkedsetusebaseangleforviewclamp&lt;br /&gt;
|0x8096&lt;br /&gt;
|0x801c&lt;br /&gt;
|-&lt;br /&gt;
|lerpviewangleclamp&lt;br /&gt;
|0x8097&lt;br /&gt;
|0x801d&lt;br /&gt;
|-&lt;br /&gt;
|setviewangleresistance&lt;br /&gt;
|0x8098&lt;br /&gt;
|0x801e&lt;br /&gt;
|-&lt;br /&gt;
|geteye&lt;br /&gt;
|0x8099&lt;br /&gt;
|0x801f&lt;br /&gt;
|-&lt;br /&gt;
|istouching&lt;br /&gt;
|0x809a&lt;br /&gt;
|0x8020&lt;br /&gt;
|-&lt;br /&gt;
|stoploopsound&lt;br /&gt;
|0x809b&lt;br /&gt;
|0x8021&lt;br /&gt;
|-&lt;br /&gt;
|stopsounds&lt;br /&gt;
|0x809c&lt;br /&gt;
|0x8022&lt;br /&gt;
|-&lt;br /&gt;
|playrumbleonentity&lt;br /&gt;
|0x809d&lt;br /&gt;
|0x8023&lt;br /&gt;
|-&lt;br /&gt;
|playrumblelooponentity&lt;br /&gt;
|0x809e&lt;br /&gt;
|0x8024&lt;br /&gt;
|-&lt;br /&gt;
|stoprumble&lt;br /&gt;
|0x809f&lt;br /&gt;
|0x8025&lt;br /&gt;
|-&lt;br /&gt;
|delete&lt;br /&gt;
|0x80a0&lt;br /&gt;
|0x8026&lt;br /&gt;
|-&lt;br /&gt;
|setmodel&lt;br /&gt;
|0x80a1&lt;br /&gt;
|0x8027&lt;br /&gt;
|-&lt;br /&gt;
|laseron&lt;br /&gt;
|0x80a2&lt;br /&gt;
|0x8028&lt;br /&gt;
|-&lt;br /&gt;
|laseroff&lt;br /&gt;
|0x80a3&lt;br /&gt;
|0x8029&lt;br /&gt;
|-&lt;br /&gt;
|laseraltviewon&lt;br /&gt;
|0x80a4&lt;br /&gt;
|0x802a&lt;br /&gt;
|-&lt;br /&gt;
|laseraltviewoff&lt;br /&gt;
|0x80a5&lt;br /&gt;
|0x802b&lt;br /&gt;
|-&lt;br /&gt;
|thermalvisionon&lt;br /&gt;
|0x80a6&lt;br /&gt;
|0x802c&lt;br /&gt;
|-&lt;br /&gt;
|thermalvisionoff&lt;br /&gt;
|0x80a7&lt;br /&gt;
|0x802d&lt;br /&gt;
|-&lt;br /&gt;
|thermaldrawenable&lt;br /&gt;
|0x8023&lt;br /&gt;
|0x82ef&lt;br /&gt;
|-&lt;br /&gt;
|thermaldrawdisable&lt;br /&gt;
|0x8000&lt;br /&gt;
|0x82f0&lt;br /&gt;
|-&lt;br /&gt;
|thermalvisionfofoverlayon&lt;br /&gt;
|0x80a8&lt;br /&gt;
|0x802e&lt;br /&gt;
|-&lt;br /&gt;
|thermalvisionfofoverlayoff&lt;br /&gt;
|0x80a9&lt;br /&gt;
|0x802f&lt;br /&gt;
|-&lt;br /&gt;
|autospotoverlayon&lt;br /&gt;
|0x80aa&lt;br /&gt;
|0x8030&lt;br /&gt;
|-&lt;br /&gt;
|autospotoverlayoff&lt;br /&gt;
|0x80ab&lt;br /&gt;
|0x8031&lt;br /&gt;
|-&lt;br /&gt;
|setcontents&lt;br /&gt;
|0x80ac&lt;br /&gt;
|0x8032&lt;br /&gt;
|-&lt;br /&gt;
|makeusable&lt;br /&gt;
|0x80ad&lt;br /&gt;
|0x8033&lt;br /&gt;
|-&lt;br /&gt;
|makeunusable&lt;br /&gt;
|0x80ae&lt;br /&gt;
|0x8034&lt;br /&gt;
|-&lt;br /&gt;
|setcursorhint&lt;br /&gt;
|0x80c6&lt;br /&gt;
|0x8035&lt;br /&gt;
|-&lt;br /&gt;
|sethintstring&lt;br /&gt;
|0x80c7&lt;br /&gt;
|0x8036&lt;br /&gt;
|-&lt;br /&gt;
|forceusehinton&lt;br /&gt;
|0x80c8&lt;br /&gt;
|0x8037&lt;br /&gt;
|-&lt;br /&gt;
|forceusehintoff&lt;br /&gt;
|0x80c9&lt;br /&gt;
|0x8038&lt;br /&gt;
|-&lt;br /&gt;
|makesoft&lt;br /&gt;
|0x80ca&lt;br /&gt;
|0x8039&lt;br /&gt;
|-&lt;br /&gt;
|makehard&lt;br /&gt;
|0x80cb&lt;br /&gt;
|0x803a&lt;br /&gt;
|-&lt;br /&gt;
|willneverchange&lt;br /&gt;
|0x80cc&lt;br /&gt;
|0x803b&lt;br /&gt;
|-&lt;br /&gt;
|startfiring&lt;br /&gt;
|0x80cd&lt;br /&gt;
|0x803c&lt;br /&gt;
|-&lt;br /&gt;
|stopfiring&lt;br /&gt;
|0x80ce&lt;br /&gt;
|0x803d&lt;br /&gt;
|-&lt;br /&gt;
|isfiringturret&lt;br /&gt;
|0x80cf&lt;br /&gt;
|0x803e&lt;br /&gt;
|-&lt;br /&gt;
|startbarrelspin&lt;br /&gt;
|0x80d0&lt;br /&gt;
|0x803f&lt;br /&gt;
|-&lt;br /&gt;
|stopbarrelspin&lt;br /&gt;
|0x80d1&lt;br /&gt;
|0x8040&lt;br /&gt;
|-&lt;br /&gt;
|getbarrelspinrate&lt;br /&gt;
|0x80d2&lt;br /&gt;
|0x8041&lt;br /&gt;
|-&lt;br /&gt;
|remotecontrolturret&lt;br /&gt;
|0x80d3&lt;br /&gt;
|0x8042&lt;br /&gt;
|-&lt;br /&gt;
|remotecontrolturretoff&lt;br /&gt;
|0x80d4&lt;br /&gt;
|0x8043&lt;br /&gt;
|-&lt;br /&gt;
|shootturret&lt;br /&gt;
|0x80d5&lt;br /&gt;
|0x8044&lt;br /&gt;
|-&lt;br /&gt;
|getturretowner&lt;br /&gt;
|0x80d6&lt;br /&gt;
|0x8045&lt;br /&gt;
|-&lt;br /&gt;
|setsentryowner&lt;br /&gt;
|0x80ee&lt;br /&gt;
|0x8046&lt;br /&gt;
|-&lt;br /&gt;
|setsentrycarrier&lt;br /&gt;
|0x80ef&lt;br /&gt;
|0x8047&lt;br /&gt;
|-&lt;br /&gt;
|setturretminimapvisible&lt;br /&gt;
|0x80f0&lt;br /&gt;
|0x8048&lt;br /&gt;
|-&lt;br /&gt;
|settargetentity&lt;br /&gt;
|0x80f1&lt;br /&gt;
|0x8049&lt;br /&gt;
|-&lt;br /&gt;
|snaptotargetentity&lt;br /&gt;
|0x80f2&lt;br /&gt;
|0x804a&lt;br /&gt;
|-&lt;br /&gt;
|cleartargetentity&lt;br /&gt;
|0x80f3&lt;br /&gt;
|0x804b&lt;br /&gt;
|-&lt;br /&gt;
|getturrettarget&lt;br /&gt;
|0x80f4&lt;br /&gt;
|0x804c&lt;br /&gt;
|-&lt;br /&gt;
|setplayerspread&lt;br /&gt;
|0x80f5&lt;br /&gt;
|0x804d&lt;br /&gt;
|-&lt;br /&gt;
|setaispread&lt;br /&gt;
|0x80f6&lt;br /&gt;
|0x804e&lt;br /&gt;
|-&lt;br /&gt;
|setsuppressiontime&lt;br /&gt;
|0x80f7&lt;br /&gt;
|0x804f&lt;br /&gt;
|-&lt;br /&gt;
|setconvergencetime&lt;br /&gt;
|0x8119&lt;br /&gt;
|0x8050&lt;br /&gt;
|-&lt;br /&gt;
|setconvergenceheightpercent&lt;br /&gt;
|0x811a&lt;br /&gt;
|0x8051&lt;br /&gt;
|-&lt;br /&gt;
|setturretteam&lt;br /&gt;
|0x811b&lt;br /&gt;
|0x8052&lt;br /&gt;
|-&lt;br /&gt;
|maketurretsolid&lt;br /&gt;
|0x811c&lt;br /&gt;
|0x8053&lt;br /&gt;
|-&lt;br /&gt;
|maketurretoperable&lt;br /&gt;
|0x811d&lt;br /&gt;
|0x8054&lt;br /&gt;
|-&lt;br /&gt;
|maketurretinoperable&lt;br /&gt;
|0x811e&lt;br /&gt;
|0x8055&lt;br /&gt;
|-&lt;br /&gt;
|setturretaccuracy&lt;br /&gt;
|0x813a&lt;br /&gt;
|0x8056&lt;br /&gt;
|-&lt;br /&gt;
|setrightarc&lt;br /&gt;
|0x813b&lt;br /&gt;
|0x8057&lt;br /&gt;
|-&lt;br /&gt;
|setleftarc&lt;br /&gt;
|0x813c&lt;br /&gt;
|0x8058&lt;br /&gt;
|-&lt;br /&gt;
|settoparc&lt;br /&gt;
|0x813d&lt;br /&gt;
|0x8059&lt;br /&gt;
|-&lt;br /&gt;
|setbottomarc&lt;br /&gt;
|0x813e&lt;br /&gt;
|0x805a&lt;br /&gt;
|-&lt;br /&gt;
|setautorotationdelay&lt;br /&gt;
|0x813f&lt;br /&gt;
|0x805b&lt;br /&gt;
|-&lt;br /&gt;
|setdefaultdroppitch&lt;br /&gt;
|0x8140&lt;br /&gt;
|0x805c&lt;br /&gt;
|-&lt;br /&gt;
|restoredefaultdroppitch&lt;br /&gt;
|0x8141&lt;br /&gt;
|0x805d&lt;br /&gt;
|-&lt;br /&gt;
|turretfiredisable&lt;br /&gt;
|0x8142&lt;br /&gt;
|0x805e&lt;br /&gt;
|-&lt;br /&gt;
|turretfireenable&lt;br /&gt;
|0x8161&lt;br /&gt;
|0x805f&lt;br /&gt;
|-&lt;br /&gt;
|setturretmodechangewait&lt;br /&gt;
|0x8162&lt;br /&gt;
|0x8060&lt;br /&gt;
|-&lt;br /&gt;
|usetriggerrequirelookat&lt;br /&gt;
|0x8163&lt;br /&gt;
|0x8061&lt;br /&gt;
|-&lt;br /&gt;
|getstance&lt;br /&gt;
|0x8164&lt;br /&gt;
|0x8062&lt;br /&gt;
|-&lt;br /&gt;
|setstance&lt;br /&gt;
|0x8165&lt;br /&gt;
|0x8063&lt;br /&gt;
|-&lt;br /&gt;
|itemweaponsetammo&lt;br /&gt;
|0x8166&lt;br /&gt;
|0x8064&lt;br /&gt;
|-&lt;br /&gt;
|getammocount&lt;br /&gt;
|0x8167&lt;br /&gt;
|0x8065&lt;br /&gt;
|-&lt;br /&gt;
|gettagorigin&lt;br /&gt;
|0x8168&lt;br /&gt;
|0x8066&lt;br /&gt;
|-&lt;br /&gt;
|gettagangles&lt;br /&gt;
|0x8169&lt;br /&gt;
|0x8067&lt;br /&gt;
|-&lt;br /&gt;
|shellshock&lt;br /&gt;
|0x816a&lt;br /&gt;
|0x8068&lt;br /&gt;
|-&lt;br /&gt;
|stunplayer&lt;br /&gt;
|0x816b&lt;br /&gt;
|0x8069&lt;br /&gt;
|-&lt;br /&gt;
|stopshellshock&lt;br /&gt;
|0x816c&lt;br /&gt;
|0x806a&lt;br /&gt;
|-&lt;br /&gt;
|fadeoutshellshock&lt;br /&gt;
|0x816d&lt;br /&gt;
|0x806b&lt;br /&gt;
|-&lt;br /&gt;
|setdepthoffield&lt;br /&gt;
|0x816e&lt;br /&gt;
|0x806c&lt;br /&gt;
|-&lt;br /&gt;
|setviewmodeldepthoffield&lt;br /&gt;
|0x816f&lt;br /&gt;
|0x806d&lt;br /&gt;
|-&lt;br /&gt;
|setmotionblurmovescale&lt;br /&gt;
|0x8170&lt;br /&gt;
|0x806e&lt;br /&gt;
|-&lt;br /&gt;
|setmotionblurturnscale&lt;br /&gt;
|0x8190&lt;br /&gt;
|0x806f&lt;br /&gt;
|-&lt;br /&gt;
|setmotionblurzoomscale&lt;br /&gt;
|0x8191&lt;br /&gt;
|0x8070&lt;br /&gt;
|-&lt;br /&gt;
|viewkick&lt;br /&gt;
|0x8192&lt;br /&gt;
|0x8071&lt;br /&gt;
|-&lt;br /&gt;
|localtoworldcoords&lt;br /&gt;
|0x8193&lt;br /&gt;
|0x8072&lt;br /&gt;
|-&lt;br /&gt;
|getentitynumber&lt;br /&gt;
|0x8194&lt;br /&gt;
|0x8073&lt;br /&gt;
|-&lt;br /&gt;
|getentityvelocity&lt;br /&gt;
|0x8195&lt;br /&gt;
|0x8074&lt;br /&gt;
|-&lt;br /&gt;
|enablegrenadetouchdamage&lt;br /&gt;
|0x8196&lt;br /&gt;
|0x8075&lt;br /&gt;
|-&lt;br /&gt;
|disablegrenadetouchdamage&lt;br /&gt;
|0x8197&lt;br /&gt;
|0x8076&lt;br /&gt;
|-&lt;br /&gt;
|enableaimassist&lt;br /&gt;
|0x8198&lt;br /&gt;
|0x8077&lt;br /&gt;
|-&lt;br /&gt;
|disableaimassist&lt;br /&gt;
|0x81b7&lt;br /&gt;
|0x8078&lt;br /&gt;
|-&lt;br /&gt;
|radiusdamage&lt;br /&gt;
|0x81b8&lt;br /&gt;
|0x8079&lt;br /&gt;
|-&lt;br /&gt;
|detonate&lt;br /&gt;
|0x81b9&lt;br /&gt;
|0x807a&lt;br /&gt;
|-&lt;br /&gt;
|damageconetrace&lt;br /&gt;
|0x81ba&lt;br /&gt;
|0x807b&lt;br /&gt;
|-&lt;br /&gt;
|sightconetrace&lt;br /&gt;
|0x81bb&lt;br /&gt;
|0x807c&lt;br /&gt;
|-&lt;br /&gt;
|settargetent&lt;br /&gt;
|0x81bc&lt;br /&gt;
|0x807d&lt;br /&gt;
|-&lt;br /&gt;
|settargetpos&lt;br /&gt;
|0x81bd&lt;br /&gt;
|0x807e&lt;br /&gt;
|-&lt;br /&gt;
|cleartarget&lt;br /&gt;
|0x81be&lt;br /&gt;
|0x807f&lt;br /&gt;
|-&lt;br /&gt;
|setflightmodedirect&lt;br /&gt;
|0x81bf&lt;br /&gt;
|0x8080&lt;br /&gt;
|-&lt;br /&gt;
|setflightmodetop&lt;br /&gt;
|0x81c0&lt;br /&gt;
|0x8081&lt;br /&gt;
|-&lt;br /&gt;
|getlightintensity&lt;br /&gt;
|0x81c1&lt;br /&gt;
|0x8082&lt;br /&gt;
|-&lt;br /&gt;
|setlightintensity&lt;br /&gt;
|0x81c2&lt;br /&gt;
|0x8083&lt;br /&gt;
|-&lt;br /&gt;
|isragdoll&lt;br /&gt;
|0x81c3&lt;br /&gt;
|0x8084&lt;br /&gt;
|-&lt;br /&gt;
|setmovespeedscale&lt;br /&gt;
|0x81c4&lt;br /&gt;
|0x8085&lt;br /&gt;
|-&lt;br /&gt;
|cameralinkto&lt;br /&gt;
|0x81c5&lt;br /&gt;
|0x8086&lt;br /&gt;
|-&lt;br /&gt;
|cameraunlink&lt;br /&gt;
|0x81c6&lt;br /&gt;
|0x8087&lt;br /&gt;
|-&lt;br /&gt;
|controlslinkto&lt;br /&gt;
|0x81e3&lt;br /&gt;
|0x8088&lt;br /&gt;
|-&lt;br /&gt;
|controlsunlink&lt;br /&gt;
|0x81e4&lt;br /&gt;
|0x8089&lt;br /&gt;
|-&lt;br /&gt;
|makevehiclesolidcapsule&lt;br /&gt;
|0x81e5&lt;br /&gt;
|0x808a&lt;br /&gt;
|-&lt;br /&gt;
|makevehiclesolidsphere&lt;br /&gt;
|0x81e6&lt;br /&gt;
|0x808b&lt;br /&gt;
|-&lt;br /&gt;
|remotecontrolvehicle&lt;br /&gt;
|0x81e8&lt;br /&gt;
|0x808d&lt;br /&gt;
|-&lt;br /&gt;
|remotecontrolvehicleoff&lt;br /&gt;
|0x81e9&lt;br /&gt;
|0x808e&lt;br /&gt;
|-&lt;br /&gt;
|isfiringvehicleturret&lt;br /&gt;
|0x81ea&lt;br /&gt;
|0x808f&lt;br /&gt;
|-&lt;br /&gt;
|drivevehicleandcontrolturret&lt;br /&gt;
|0x81eb&lt;br /&gt;
|0x8090&lt;br /&gt;
|-&lt;br /&gt;
|drivevehicleandcontrolturretoff&lt;br /&gt;
|0x81ec&lt;br /&gt;
|0x8091&lt;br /&gt;
|-&lt;br /&gt;
|getplayersetting&lt;br /&gt;
|0x81ed&lt;br /&gt;
|0x8092&lt;br /&gt;
|-&lt;br /&gt;
|getlocalplayerprofiledata&lt;br /&gt;
|0x81ee&lt;br /&gt;
|0x8093&lt;br /&gt;
|-&lt;br /&gt;
|setlocalplayerprofiledata&lt;br /&gt;
|0x81ef&lt;br /&gt;
|0x8094&lt;br /&gt;
|-&lt;br /&gt;
|remotecamerasoundscapeon&lt;br /&gt;
|0x81f0&lt;br /&gt;
|0x8095&lt;br /&gt;
|-&lt;br /&gt;
|remotecamerasoundscapeoff&lt;br /&gt;
|0x81f1&lt;br /&gt;
|0x8096&lt;br /&gt;
|-&lt;br /&gt;
|radarjamon&lt;br /&gt;
|0x81f2&lt;br /&gt;
|0x8097&lt;br /&gt;
|-&lt;br /&gt;
|radarjamoff&lt;br /&gt;
|0x81f3&lt;br /&gt;
|0x8098&lt;br /&gt;
|-&lt;br /&gt;
|setmotiontrackervisible&lt;br /&gt;
|0x81f4&lt;br /&gt;
|0x8099&lt;br /&gt;
|-&lt;br /&gt;
|getmotiontrackervisible&lt;br /&gt;
|0x81f5&lt;br /&gt;
|0x809a&lt;br /&gt;
|-&lt;br /&gt;
|circle&lt;br /&gt;
|0x81f6&lt;br /&gt;
|0x809b&lt;br /&gt;
|-&lt;br /&gt;
|getpointinbounds&lt;br /&gt;
|0x81f7&lt;br /&gt;
|0x809c&lt;br /&gt;
|-&lt;br /&gt;
|transfermarkstonewscriptmodel&lt;br /&gt;
|0x81f8&lt;br /&gt;
|0x809d&lt;br /&gt;
|-&lt;br /&gt;
|setwatersheeting&lt;br /&gt;
|0x81f9&lt;br /&gt;
|0x809e&lt;br /&gt;
|-&lt;br /&gt;
|setweaponhudiconoverride&lt;br /&gt;
|0x81fa&lt;br /&gt;
|0x809f&lt;br /&gt;
|-&lt;br /&gt;
|getweaponhudiconoverride&lt;br /&gt;
|0x81fb&lt;br /&gt;
|0x80a0&lt;br /&gt;
|-&lt;br /&gt;
|setempjammed&lt;br /&gt;
|0x81fc&lt;br /&gt;
|0x80a1&lt;br /&gt;
|-&lt;br /&gt;
|playersetexpfog&lt;br /&gt;
|0x81fd&lt;br /&gt;
|0x80a2&lt;br /&gt;
|-&lt;br /&gt;
|isitemunlocked&lt;br /&gt;
|0x81fe&lt;br /&gt;
|0x80a3&lt;br /&gt;
|-&lt;br /&gt;
|getplayerdata&lt;br /&gt;
|0x81ff&lt;br /&gt;
|0x80a4&lt;br /&gt;
|-&lt;br /&gt;
|setplayerdata&lt;br /&gt;
|0x821a&lt;br /&gt;
|0x80a5&lt;br /&gt;
|-&lt;br /&gt;
|trackerupdate&lt;br /&gt;
|N/A&lt;br /&gt;
|0x80a6&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- player 1 --&amp;gt;&lt;br /&gt;
|pingplayer&lt;br /&gt;
|0x821c&lt;br /&gt;
|0x80a7&lt;br /&gt;
|-&lt;br /&gt;
|buttonpressed&lt;br /&gt;
|0x821d&lt;br /&gt;
|0x80a8&lt;br /&gt;
|-&lt;br /&gt;
|sayall&lt;br /&gt;
|0x821e&lt;br /&gt;
|0x80a9&lt;br /&gt;
|-&lt;br /&gt;
|sayteam&lt;br /&gt;
|0x821f&lt;br /&gt;
|0x80aa&lt;br /&gt;
|-&lt;br /&gt;
|showscoreboard&lt;br /&gt;
|0x8220&lt;br /&gt;
|0x80ab&lt;br /&gt;
|-&lt;br /&gt;
|setspawnweapon&lt;br /&gt;
|0x8221&lt;br /&gt;
|0x80ac&lt;br /&gt;
|-&lt;br /&gt;
|dropitem&lt;br /&gt;
|0x8222&lt;br /&gt;
|0x80ad&lt;br /&gt;
|-&lt;br /&gt;
|dropscavengerbag&lt;br /&gt;
|0x8223&lt;br /&gt;
|0x80ae&lt;br /&gt;
|-&lt;br /&gt;
|finishplayerdamage&lt;br /&gt;
|0x823c&lt;br /&gt;
|0x80af&lt;br /&gt;
|-&lt;br /&gt;
|suicide&lt;br /&gt;
|0x823d&lt;br /&gt;
|0x80b0&lt;br /&gt;
|-&lt;br /&gt;
|closeingamemenu&lt;br /&gt;
|0x823e&lt;br /&gt;
|0x80b1&lt;br /&gt;
|-&lt;br /&gt;
|iprintln&lt;br /&gt;
|0x823f&lt;br /&gt;
|0x80b2&lt;br /&gt;
|-&lt;br /&gt;
|iprintlnbold&lt;br /&gt;
|0x8240&lt;br /&gt;
|0x80b3&lt;br /&gt;
|-&lt;br /&gt;
|spawn&lt;br /&gt;
|0x8241&lt;br /&gt;
|0x80b4&lt;br /&gt;
|-&lt;br /&gt;
|setentertime&lt;br /&gt;
|0x8242&lt;br /&gt;
|0x80b5&lt;br /&gt;
|-&lt;br /&gt;
|cloneplayer&lt;br /&gt;
|0x8243&lt;br /&gt;
|0x80b6&lt;br /&gt;
|-&lt;br /&gt;
|istalking&lt;br /&gt;
|0x8244&lt;br /&gt;
|0x80b7&lt;br /&gt;
|-&lt;br /&gt;
|allowspectateteam&lt;br /&gt;
|0x8245&lt;br /&gt;
|0x80b8&lt;br /&gt;
|-&lt;br /&gt;
|getguid&lt;br /&gt;
|0x8246&lt;br /&gt;
|0x80b9&lt;br /&gt;
|-&lt;br /&gt;
|getxuid&lt;br /&gt;
|0x8266&lt;br /&gt;
|0x80ba&lt;br /&gt;
|-&lt;br /&gt;
|ishost&lt;br /&gt;
|0x8267&lt;br /&gt;
|0x80bb&lt;br /&gt;
|-&lt;br /&gt;
|getspectatingplayer&lt;br /&gt;
|0x8268&lt;br /&gt;
|0x80bc&lt;br /&gt;
|-&lt;br /&gt;
|predictstreampos&lt;br /&gt;
|0x8269&lt;br /&gt;
|0x80bd&lt;br /&gt;
|-&lt;br /&gt;
|updatescores&lt;br /&gt;
|0x826a&lt;br /&gt;
|0x80be&lt;br /&gt;
|-&lt;br /&gt;
|updatedmscores&lt;br /&gt;
|0x826b&lt;br /&gt;
|0x80bf&lt;br /&gt;
|-&lt;br /&gt;
|setrank&lt;br /&gt;
|0x826c&lt;br /&gt;
|0x80c0&lt;br /&gt;
|-&lt;br /&gt;
|setcardtitle&lt;br /&gt;
|0x826d&lt;br /&gt;
|0x80c1&lt;br /&gt;
|-&lt;br /&gt;
|setcardicon&lt;br /&gt;
|0x828c&lt;br /&gt;
|0x80c2&lt;br /&gt;
|-&lt;br /&gt;
|setcardnameplate&lt;br /&gt;
|0x828d&lt;br /&gt;
|0x80c3&lt;br /&gt;
|-&lt;br /&gt;
|setcarddisplayslot&lt;br /&gt;
|0x828e&lt;br /&gt;
|0x80c4&lt;br /&gt;
|-&lt;br /&gt;
|kc_regweaponforfxremoval&lt;br /&gt;
|0x828f&lt;br /&gt;
|0x80c5&lt;br /&gt;
|-&lt;br /&gt;
|laststandrevive&lt;br /&gt;
|0x8290&lt;br /&gt;
|0x80c6&lt;br /&gt;
|-&lt;br /&gt;
|setspectatedefaults&lt;br /&gt;
|0x8291&lt;br /&gt;
|0x80c7&lt;br /&gt;
|-&lt;br /&gt;
|getthirdpersoncrosshairoffset&lt;br /&gt;
|0x8292&lt;br /&gt;
|0x80c8&lt;br /&gt;
|-&lt;br /&gt;
|disableweaponpickup&lt;br /&gt;
|0x8293&lt;br /&gt;
|0x80c9&lt;br /&gt;
|-&lt;br /&gt;
|enableweaponpickup&lt;br /&gt;
|0x8294&lt;br /&gt;
|0x80ca&lt;br /&gt;
|-&lt;br /&gt;
|issplitscreenplayer&lt;br /&gt;
|N/A&lt;br /&gt;
|0x80cb&lt;br /&gt;
|-&lt;br /&gt;
|issplitscreenplayerprimary&lt;br /&gt;
|N/A&lt;br /&gt;
|0x80cc&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- player 2 --&amp;gt;&lt;br /&gt;
|getviewmodel&lt;br /&gt;
|0x82b1&lt;br /&gt;
|0x80cd&lt;br /&gt;
|-&lt;br /&gt;
|fragbuttonpressed&lt;br /&gt;
|0x82b2&lt;br /&gt;
|0x80ce&lt;br /&gt;
|-&lt;br /&gt;
|secondaryoffhandbuttonpressed&lt;br /&gt;
|0x82b3&lt;br /&gt;
|0x80cf&lt;br /&gt;
|-&lt;br /&gt;
|getcurrentweaponclipammo&lt;br /&gt;
|0x82b4&lt;br /&gt;
|0x80d0&lt;br /&gt;
|-&lt;br /&gt;
|setvelocity&lt;br /&gt;
|0x82b5&lt;br /&gt;
|0x80d1&lt;br /&gt;
|-&lt;br /&gt;
|getplayerviewheight&lt;br /&gt;
|0x82b6&lt;br /&gt;
|0x80d2&lt;br /&gt;
|-&lt;br /&gt;
|enablemousesteer&lt;br /&gt;
|0x8309&lt;br /&gt;
|0x8309&lt;br /&gt;
|-&lt;br /&gt;
|getnormalizedmovement&lt;br /&gt;
|0x82b7&lt;br /&gt;
|0x80d3&lt;br /&gt;
|-&lt;br /&gt;
|getnormalizedcameramovement&lt;br /&gt;
|0x82ce&lt;br /&gt;
|0x80d4&lt;br /&gt;
|-&lt;br /&gt;
|giveweapon&lt;br /&gt;
|0x82cf&lt;br /&gt;
|0x80d5&lt;br /&gt;
|-&lt;br /&gt;
|takeweapon&lt;br /&gt;
|0x82d0&lt;br /&gt;
|0x80d6&lt;br /&gt;
|-&lt;br /&gt;
|takeallweapons&lt;br /&gt;
|0x82d1&lt;br /&gt;
|0x80d7&lt;br /&gt;
|-&lt;br /&gt;
|getcurrentweapon&lt;br /&gt;
|0x82d2&lt;br /&gt;
|0x80d8&lt;br /&gt;
|-&lt;br /&gt;
|getcurrentprimaryweapon&lt;br /&gt;
|0x82d3&lt;br /&gt;
|0x80d9&lt;br /&gt;
|-&lt;br /&gt;
|getcurrentoffhand&lt;br /&gt;
|0x82d4&lt;br /&gt;
|0x80da&lt;br /&gt;
|-&lt;br /&gt;
|hasweapon&lt;br /&gt;
|0x82d5&lt;br /&gt;
|0x80db&lt;br /&gt;
|-&lt;br /&gt;
|switchtoweapon&lt;br /&gt;
|0x82d6&lt;br /&gt;
|0x80dc&lt;br /&gt;
|-&lt;br /&gt;
|switchtoweaponimmediate&lt;br /&gt;
|0x82d7&lt;br /&gt;
|0x80dd&lt;br /&gt;
|-&lt;br /&gt;
|switchtooffhand&lt;br /&gt;
|0x82d8&lt;br /&gt;
|0x80de&lt;br /&gt;
|-&lt;br /&gt;
|givestartammo&lt;br /&gt;
|0x82f2&lt;br /&gt;
|0x80df&lt;br /&gt;
|-&lt;br /&gt;
|givemaxammo&lt;br /&gt;
|0x82f3&lt;br /&gt;
|0x80e0&lt;br /&gt;
|-&lt;br /&gt;
|getfractionstartammo&lt;br /&gt;
|0x82f4&lt;br /&gt;
|0x80e1&lt;br /&gt;
|-&lt;br /&gt;
|getfractionmaxammo&lt;br /&gt;
|0x82f5&lt;br /&gt;
|0x80e2&lt;br /&gt;
|-&lt;br /&gt;
|isdualwielding&lt;br /&gt;
|0x82f6&lt;br /&gt;
|0x80e3&lt;br /&gt;
|-&lt;br /&gt;
|isreloading&lt;br /&gt;
|0x82f7&lt;br /&gt;
|0x80e4&lt;br /&gt;
|-&lt;br /&gt;
|isswitchingweapon&lt;br /&gt;
|0x82f8&lt;br /&gt;
|0x80e5&lt;br /&gt;
|-&lt;br /&gt;
|setorigin&lt;br /&gt;
|0x82f9&lt;br /&gt;
|0x80e6&lt;br /&gt;
|-&lt;br /&gt;
|getvelocity&lt;br /&gt;
|0x82fa&lt;br /&gt;
|0x80e7&lt;br /&gt;
|-&lt;br /&gt;
|setplayerangles&lt;br /&gt;
|0x82fb&lt;br /&gt;
|0x80e8&lt;br /&gt;
|-&lt;br /&gt;
|getplayerangles&lt;br /&gt;
|0x82fc&lt;br /&gt;
|0x80e9&lt;br /&gt;
|-&lt;br /&gt;
|usebuttonpressed&lt;br /&gt;
|0x82fd&lt;br /&gt;
|0x80ea&lt;br /&gt;
|-&lt;br /&gt;
|attackbuttonpressed&lt;br /&gt;
|0x82fe&lt;br /&gt;
|0x80eb&lt;br /&gt;
|-&lt;br /&gt;
|adsbuttonpressed&lt;br /&gt;
|0x82ff&lt;br /&gt;
|0x80ec&lt;br /&gt;
|-&lt;br /&gt;
|meleebuttonpressed&lt;br /&gt;
|0x8300&lt;br /&gt;
|0x80ed&lt;br /&gt;
|-&lt;br /&gt;
|playerads&lt;br /&gt;
|0x8301&lt;br /&gt;
|0x80ee&lt;br /&gt;
|-&lt;br /&gt;
|isonground&lt;br /&gt;
|0x8302&lt;br /&gt;
|0x80ef&lt;br /&gt;
|-&lt;br /&gt;
|isusingturret&lt;br /&gt;
|0x8303&lt;br /&gt;
|0x80f0&lt;br /&gt;
|-&lt;br /&gt;
|setviewmodel&lt;br /&gt;
|0x8304&lt;br /&gt;
|0x80f1&lt;br /&gt;
|-&lt;br /&gt;
|setoffhandprimaryclass&lt;br /&gt;
|0x8305&lt;br /&gt;
|0x80f2&lt;br /&gt;
|-&lt;br /&gt;
|getoffhandprimaryclass&lt;br /&gt;
|0x8306&lt;br /&gt;
|0x80f3&lt;br /&gt;
|-&lt;br /&gt;
|setoffhandsecondaryclass&lt;br /&gt;
|0x82d9&lt;br /&gt;
|0x80f4&lt;br /&gt;
|-&lt;br /&gt;
|getoffhandsecondaryclass&lt;br /&gt;
|0x82da&lt;br /&gt;
|0x80f5&lt;br /&gt;
|-&lt;br /&gt;
|beginlocationselection&lt;br /&gt;
|0x82db&lt;br /&gt;
|0x80f6&lt;br /&gt;
|-&lt;br /&gt;
|endlocationselection&lt;br /&gt;
|0x82dc&lt;br /&gt;
|0x80f7&lt;br /&gt;
|-&lt;br /&gt;
|disableweapons&lt;br /&gt;
|0x82dd&lt;br /&gt;
|0x80f8&lt;br /&gt;
|-&lt;br /&gt;
|enableweapons&lt;br /&gt;
|0x82de&lt;br /&gt;
|0x80f9&lt;br /&gt;
|-&lt;br /&gt;
|disableoffhandweapons&lt;br /&gt;
|0x82df&lt;br /&gt;
|0x80fa&lt;br /&gt;
|-&lt;br /&gt;
|enableoffhandweapons&lt;br /&gt;
|0x82e0&lt;br /&gt;
|0x80fb&lt;br /&gt;
|-&lt;br /&gt;
|disableweaponswitch&lt;br /&gt;
|0x82e1&lt;br /&gt;
|0x80fc&lt;br /&gt;
|-&lt;br /&gt;
|enableweaponswitch&lt;br /&gt;
|0x82e2&lt;br /&gt;
|0x80fd&lt;br /&gt;
|-&lt;br /&gt;
|openpopupmenu&lt;br /&gt;
|0x82e3&lt;br /&gt;
|0x80fe&lt;br /&gt;
|-&lt;br /&gt;
|openpopupmenunomouse&lt;br /&gt;
|0x82e4&lt;br /&gt;
|0x80ff&lt;br /&gt;
|-&lt;br /&gt;
|closepopupmenu&lt;br /&gt;
|0x82e5&lt;br /&gt;
|0x8100&lt;br /&gt;
|-&lt;br /&gt;
|openmenu&lt;br /&gt;
|0x82e6&lt;br /&gt;
|0x8101&lt;br /&gt;
|-&lt;br /&gt;
|closemenu&lt;br /&gt;
|0x82e7&lt;br /&gt;
|0x8102&lt;br /&gt;
|-&lt;br /&gt;
|freezecontrols&lt;br /&gt;
|0x82e9&lt;br /&gt;
|0x8104&lt;br /&gt;
|-&lt;br /&gt;
|disableusability&lt;br /&gt;
|0x82ea&lt;br /&gt;
|0x8105&lt;br /&gt;
|-&lt;br /&gt;
|enableusability&lt;br /&gt;
|0x82eb&lt;br /&gt;
|0x8106&lt;br /&gt;
|-&lt;br /&gt;
|setwhizbyspreads&lt;br /&gt;
|0x82ec&lt;br /&gt;
|0x8107&lt;br /&gt;
|-&lt;br /&gt;
|setwhizbyradii&lt;br /&gt;
|0x82ed&lt;br /&gt;
|0x8108&lt;br /&gt;
|-&lt;br /&gt;
|setreverb&lt;br /&gt;
|0x82ee&lt;br /&gt;
|0x8109&lt;br /&gt;
|-&lt;br /&gt;
|deactivatereverb&lt;br /&gt;
|0x82ef&lt;br /&gt;
|0x810a&lt;br /&gt;
|-&lt;br /&gt;
|setvolmod&lt;br /&gt;
|0x82f0&lt;br /&gt;
|0x810b&lt;br /&gt;
|-&lt;br /&gt;
|setchannelvolume&lt;br /&gt;
|0x82f1&lt;br /&gt;
|0x810c&lt;br /&gt;
|-&lt;br /&gt;
|setchannelvolumes&lt;br /&gt;
|0x82b8&lt;br /&gt;
|0x810d&lt;br /&gt;
|-&lt;br /&gt;
|deactivatechannelvolumes&lt;br /&gt;
|0x82b9&lt;br /&gt;
|0x810e&lt;br /&gt;
|-&lt;br /&gt;
|playlocalsound&lt;br /&gt;
|0x82ba&lt;br /&gt;
|0x810f&lt;br /&gt;
|-&lt;br /&gt;
|stoplocalsound&lt;br /&gt;
|0x82bb&lt;br /&gt;
|0x8110&lt;br /&gt;
|-&lt;br /&gt;
|setweaponammoclip&lt;br /&gt;
|0x82bc&lt;br /&gt;
|0x8111&lt;br /&gt;
|-&lt;br /&gt;
|setweaponammostock&lt;br /&gt;
|0x82bd&lt;br /&gt;
|0x8112&lt;br /&gt;
|-&lt;br /&gt;
|getweaponammoclip&lt;br /&gt;
|0x82be&lt;br /&gt;
|0x8113&lt;br /&gt;
|-&lt;br /&gt;
|getweaponammostock&lt;br /&gt;
|0x82bf&lt;br /&gt;
|0x8114&lt;br /&gt;
|-&lt;br /&gt;
|anyammoforweaponmodes&lt;br /&gt;
|0x82c0&lt;br /&gt;
|0x8115&lt;br /&gt;
|-&lt;br /&gt;
|setclientdvar&lt;br /&gt;
|0x82c1&lt;br /&gt;
|0x8116&lt;br /&gt;
|-&lt;br /&gt;
|setclientdvars&lt;br /&gt;
|0x82c2&lt;br /&gt;
|0x8117&lt;br /&gt;
|-&lt;br /&gt;
|allowads&lt;br /&gt;
|0x82c3&lt;br /&gt;
|0x8118&lt;br /&gt;
|-&lt;br /&gt;
|allowjump&lt;br /&gt;
|0x82c4&lt;br /&gt;
|0x8119&lt;br /&gt;
|-&lt;br /&gt;
|allowsprint&lt;br /&gt;
|0x82c5&lt;br /&gt;
|0x811a&lt;br /&gt;
|-&lt;br /&gt;
|setspreadoverride&lt;br /&gt;
|0x82c6&lt;br /&gt;
|0x811b&lt;br /&gt;
|-&lt;br /&gt;
|resetspreadoverride&lt;br /&gt;
|0x82c7&lt;br /&gt;
|0x811c&lt;br /&gt;
|-&lt;br /&gt;
|setaimspreadmovementscale&lt;br /&gt;
|0x82c8&lt;br /&gt;
|0x811d&lt;br /&gt;
|-&lt;br /&gt;
|setactionslot&lt;br /&gt;
|0x82c9&lt;br /&gt;
|0x811e&lt;br /&gt;
|-&lt;br /&gt;
|setviewkickscale&lt;br /&gt;
|0x82ca&lt;br /&gt;
|0x811f&lt;br /&gt;
|-&lt;br /&gt;
|getviewkickscale&lt;br /&gt;
|0x82cb&lt;br /&gt;
|0x8120&lt;br /&gt;
|-&lt;br /&gt;
|getweaponslistall&lt;br /&gt;
|0x82cc&lt;br /&gt;
|0x8121&lt;br /&gt;
|-&lt;br /&gt;
|getweaponslistprimaries&lt;br /&gt;
|0x82cd&lt;br /&gt;
|0x8122&lt;br /&gt;
|-&lt;br /&gt;
|getweaponslistoffhands&lt;br /&gt;
|0x8296&lt;br /&gt;
|0x8123&lt;br /&gt;
|-&lt;br /&gt;
|getweaponslistitems&lt;br /&gt;
|0x8297&lt;br /&gt;
|0x8124&lt;br /&gt;
|-&lt;br /&gt;
|getweaponslistexclusives&lt;br /&gt;
|0x8298&lt;br /&gt;
|0x8125&lt;br /&gt;
|-&lt;br /&gt;
|getweaponslist&lt;br /&gt;
|0x8299&lt;br /&gt;
|0x8126&lt;br /&gt;
|-&lt;br /&gt;
|canplayerplacesentry&lt;br /&gt;
|0x829a&lt;br /&gt;
|0x8127&lt;br /&gt;
|-&lt;br /&gt;
|canplayerplacetank&lt;br /&gt;
|0x829b&lt;br /&gt;
|0x8128&lt;br /&gt;
|-&lt;br /&gt;
|visionsetnakedforplayer&lt;br /&gt;
|0x829c&lt;br /&gt;
|0x8129&lt;br /&gt;
|-&lt;br /&gt;
|visionsetnightforplayer&lt;br /&gt;
|0x829d&lt;br /&gt;
|0x812a&lt;br /&gt;
|-&lt;br /&gt;
|visionsetmissilecamforplayer&lt;br /&gt;
|0x829e&lt;br /&gt;
|0x812b&lt;br /&gt;
|-&lt;br /&gt;
|visionsetthermalforplayer&lt;br /&gt;
|0x829f&lt;br /&gt;
|0x812c&lt;br /&gt;
|-&lt;br /&gt;
|visionsetpainforplayer&lt;br /&gt;
|0x82a0&lt;br /&gt;
|0x812d&lt;br /&gt;
|-&lt;br /&gt;
|setblurforplayer&lt;br /&gt;
|0x82a1&lt;br /&gt;
|0x812e&lt;br /&gt;
|-&lt;br /&gt;
|getplayerweaponmodel&lt;br /&gt;
|0x82a2&lt;br /&gt;
|0x812f&lt;br /&gt;
|-&lt;br /&gt;
|getplayerknifemodel&lt;br /&gt;
|0x82a3&lt;br /&gt;
|0x8130&lt;br /&gt;
|-&lt;br /&gt;
|updateplayermodelwithweapons&lt;br /&gt;
|0x82a4&lt;br /&gt;
|0x8131&lt;br /&gt;
|-&lt;br /&gt;
|notifyonplayercommand&lt;br /&gt;
|0x82a5&lt;br /&gt;
|0x8132&lt;br /&gt;
|-&lt;br /&gt;
|canmantle&lt;br /&gt;
|0x82a6&lt;br /&gt;
|0x8133&lt;br /&gt;
|-&lt;br /&gt;
|forcemantle&lt;br /&gt;
|0x82a7&lt;br /&gt;
|0x8134&lt;br /&gt;
|-&lt;br /&gt;
|ismantling&lt;br /&gt;
|0x82a8&lt;br /&gt;
|0x8135&lt;br /&gt;
|-&lt;br /&gt;
|playfx&lt;br /&gt;
|0x82a9&lt;br /&gt;
|0x8136&lt;br /&gt;
|-&lt;br /&gt;
|recoilscaleon&lt;br /&gt;
|0x82aa&lt;br /&gt;
|0x8137&lt;br /&gt;
|-&lt;br /&gt;
|recoilscaleoff&lt;br /&gt;
|0x82ab&lt;br /&gt;
|0x8138&lt;br /&gt;
|-&lt;br /&gt;
|weaponlockstart&lt;br /&gt;
|0x82ac&lt;br /&gt;
|0x8139&lt;br /&gt;
|-&lt;br /&gt;
|weaponlockfinalize&lt;br /&gt;
|0x82ad&lt;br /&gt;
|0x813a&lt;br /&gt;
|-&lt;br /&gt;
|weaponlockfree&lt;br /&gt;
|0x82ae&lt;br /&gt;
|0x813b&lt;br /&gt;
|-&lt;br /&gt;
|weaponlocktargettooclose&lt;br /&gt;
|0x82af&lt;br /&gt;
|0x813c&lt;br /&gt;
|-&lt;br /&gt;
|weaponlocknoclearance&lt;br /&gt;
|0x826e&lt;br /&gt;
|0x813d&lt;br /&gt;
|-&lt;br /&gt;
|visionsyncwithplayer&lt;br /&gt;
|0x826f&lt;br /&gt;
|0x813e&lt;br /&gt;
|-&lt;br /&gt;
|showhudsplash&lt;br /&gt;
|0x8270&lt;br /&gt;
|0x813f&lt;br /&gt;
|-&lt;br /&gt;
|setperk&lt;br /&gt;
|0x8271&lt;br /&gt;
|0x8140&lt;br /&gt;
|-&lt;br /&gt;
|hasperk&lt;br /&gt;
|0x8272&lt;br /&gt;
|0x8141&lt;br /&gt;
|-&lt;br /&gt;
|clearperks&lt;br /&gt;
|0x8273&lt;br /&gt;
|0x8142&lt;br /&gt;
|-&lt;br /&gt;
|unsetperk&lt;br /&gt;
|0x8274&lt;br /&gt;
|0x8143&lt;br /&gt;
|-&lt;br /&gt;
|noclip&lt;br /&gt;
|0x8275&lt;br /&gt;
|0x8144&lt;br /&gt;
|-&lt;br /&gt;
|ufo&lt;br /&gt;
|0x8276&lt;br /&gt;
|0x8145&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- script ent --&amp;gt;&lt;br /&gt;
|moveto&lt;br /&gt;
|0x8277&lt;br /&gt;
|0x8146&lt;br /&gt;
|-&lt;br /&gt;
|movex&lt;br /&gt;
|0x8278&lt;br /&gt;
|0x8147&lt;br /&gt;
|-&lt;br /&gt;
|movey&lt;br /&gt;
|0x8279&lt;br /&gt;
|0x8148&lt;br /&gt;
|-&lt;br /&gt;
|movez&lt;br /&gt;
|0x827A&lt;br /&gt;
|0x8149&lt;br /&gt;
|-&lt;br /&gt;
|movegravity&lt;br /&gt;
|0x827B&lt;br /&gt;
|0x814A&lt;br /&gt;
|-&lt;br /&gt;
|moveslide&lt;br /&gt;
|0x827C&lt;br /&gt;
|0x814B&lt;br /&gt;
|-&lt;br /&gt;
|stopmoveslide&lt;br /&gt;
|0x827D&lt;br /&gt;
|0x814C&lt;br /&gt;
|-&lt;br /&gt;
|rotateto&lt;br /&gt;
|0x827E&lt;br /&gt;
|0x814D&lt;br /&gt;
|-&lt;br /&gt;
|rotatepitch&lt;br /&gt;
|0x827F&lt;br /&gt;
|0x814E&lt;br /&gt;
|-&lt;br /&gt;
|rotateyaw&lt;br /&gt;
|0x8280&lt;br /&gt;
|0x814F&lt;br /&gt;
|-&lt;br /&gt;
|rotateroll&lt;br /&gt;
|0x8281&lt;br /&gt;
|0x8150&lt;br /&gt;
|-&lt;br /&gt;
|addpitch&lt;br /&gt;
|0x8282&lt;br /&gt;
|0x8151&lt;br /&gt;
|-&lt;br /&gt;
|addyaw&lt;br /&gt;
|0x8283&lt;br /&gt;
|0x8152&lt;br /&gt;
|-&lt;br /&gt;
|addroll&lt;br /&gt;
|0x8284&lt;br /&gt;
|0x8153&lt;br /&gt;
|-&lt;br /&gt;
|vibrate&lt;br /&gt;
|0x8285&lt;br /&gt;
|0x8154&lt;br /&gt;
|-&lt;br /&gt;
|rotatevelocity&lt;br /&gt;
|0x8286&lt;br /&gt;
|0x8155&lt;br /&gt;
|-&lt;br /&gt;
|solid&lt;br /&gt;
|0x8287&lt;br /&gt;
|0x8156&lt;br /&gt;
|-&lt;br /&gt;
|notsolid&lt;br /&gt;
|0x8288&lt;br /&gt;
|0x8157&lt;br /&gt;
|-&lt;br /&gt;
|setcandamage&lt;br /&gt;
|0x8289&lt;br /&gt;
|0x8158&lt;br /&gt;
|-&lt;br /&gt;
|setcanradiusdamage&lt;br /&gt;
|0x828A&lt;br /&gt;
|0x8159&lt;br /&gt;
|-&lt;br /&gt;
|physicslaunchclient&lt;br /&gt;
|0x828B&lt;br /&gt;
|0x815A&lt;br /&gt;
|-&lt;br /&gt;
|physicslaunchserver&lt;br /&gt;
|0x8247&lt;br /&gt;
|0x815B&lt;br /&gt;
|-&lt;br /&gt;
|physicslaunchserveritem&lt;br /&gt;
|0x8248&lt;br /&gt;
|0x815C&lt;br /&gt;
|-&lt;br /&gt;
|clonebrushmodeltoscriptmodel&lt;br /&gt;
|0x8249&lt;br /&gt;
|0x815D&lt;br /&gt;
|-&lt;br /&gt;
|scriptmodelplayanim&lt;br /&gt;
|0x824A&lt;br /&gt;
|0x815E&lt;br /&gt;
|-&lt;br /&gt;
|scriptmodelclearanim&lt;br /&gt;
|0x824B&lt;br /&gt;
|0x815F&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- vehicle --&amp;gt;&lt;br /&gt;
|vehicle_teleport&lt;br /&gt;
|0x824C&lt;br /&gt;
|0x8160&lt;br /&gt;
|-&lt;br /&gt;
|attachpath&lt;br /&gt;
|0x824D&lt;br /&gt;
|0x8161&lt;br /&gt;
|-&lt;br /&gt;
|getattachpos&lt;br /&gt;
|0x824E&lt;br /&gt;
|0x8162&lt;br /&gt;
|-&lt;br /&gt;
|startpath&lt;br /&gt;
|0x824F&lt;br /&gt;
|0x8163&lt;br /&gt;
|-&lt;br /&gt;
|setswitchnode&lt;br /&gt;
|0x8250&lt;br /&gt;
|0x8164&lt;br /&gt;
|-&lt;br /&gt;
|setwaitspeed&lt;br /&gt;
|0x8251&lt;br /&gt;
|0x8165&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_finishdamage&lt;br /&gt;
|0x8252&lt;br /&gt;
|0x8166&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_setspeed&lt;br /&gt;
|0x8253&lt;br /&gt;
|0x8167&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_setspeedimmediate&lt;br /&gt;
|0x8254&lt;br /&gt;
|0x8168&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_rotateyaw&lt;br /&gt;
|0x8255&lt;br /&gt;
|0x8169&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_getspeed&lt;br /&gt;
|0x8256&lt;br /&gt;
|0x816a&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_getvelocity&lt;br /&gt;
|0x8257&lt;br /&gt;
|0x816b&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_getbodyvelocity&lt;br /&gt;
|0x8258&lt;br /&gt;
|0x816c&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_getsteering&lt;br /&gt;
|0x8259&lt;br /&gt;
|0x816d&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_getthrottle&lt;br /&gt;
|0x825A&lt;br /&gt;
|0x816e&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_turnengineoff&lt;br /&gt;
|0x825B&lt;br /&gt;
|0x816f&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_turnengineon&lt;br /&gt;
|0x825C&lt;br /&gt;
|0x8170&lt;br /&gt;
|-&lt;br /&gt;
|getgoalspeedmph&lt;br /&gt;
|0x825D&lt;br /&gt;
|0x8171&lt;br /&gt;
|-&lt;br /&gt;
|setacceleration&lt;br /&gt;
|0x825E&lt;br /&gt;
|0x8172&lt;br /&gt;
|-&lt;br /&gt;
|setdeceleration&lt;br /&gt;
|0x825F&lt;br /&gt;
|0x8173&lt;br /&gt;
|-&lt;br /&gt;
|resumespeed&lt;br /&gt;
|0x8260&lt;br /&gt;
|0x8174&lt;br /&gt;
|-&lt;br /&gt;
|setyawspeed&lt;br /&gt;
|0x8261&lt;br /&gt;
|0x8175&lt;br /&gt;
|-&lt;br /&gt;
|setyawspeedbyname&lt;br /&gt;
|0x8262&lt;br /&gt;
|0x8176&lt;br /&gt;
|-&lt;br /&gt;
|setmaxpitchroll&lt;br /&gt;
|0x8263&lt;br /&gt;
|0x8177&lt;br /&gt;
|-&lt;br /&gt;
|setairresistance&lt;br /&gt;
|0x8264&lt;br /&gt;
|0x8178&lt;br /&gt;
|-&lt;br /&gt;
|setturningability&lt;br /&gt;
|0x8265&lt;br /&gt;
|0x8179&lt;br /&gt;
|-&lt;br /&gt;
|setjitterparams&lt;br /&gt;
|0x8224&lt;br /&gt;
|0x817a&lt;br /&gt;
|-&lt;br /&gt;
|sethoverparams&lt;br /&gt;
|0x8225&lt;br /&gt;
|0x817b&lt;br /&gt;
|-&lt;br /&gt;
|joltbody&lt;br /&gt;
|0x8226&lt;br /&gt;
|0x817c&lt;br /&gt;
|-&lt;br /&gt;
|freevehicle&lt;br /&gt;
|0x8227&lt;br /&gt;
|0x817d&lt;br /&gt;
|-&lt;br /&gt;
|getwheelsurface&lt;br /&gt;
|0x8228&lt;br /&gt;
|0x817e&lt;br /&gt;
|-&lt;br /&gt;
|getvehicleowner&lt;br /&gt;
|0x8229&lt;br /&gt;
|0x817f&lt;br /&gt;
|-&lt;br /&gt;
|setvehiclelookattext&lt;br /&gt;
|0x822A&lt;br /&gt;
|0x8180&lt;br /&gt;
|-&lt;br /&gt;
|setvehicleteam&lt;br /&gt;
|0x822B&lt;br /&gt;
|0x8181&lt;br /&gt;
|-&lt;br /&gt;
|setneargoalnotifydist&lt;br /&gt;
|0x822C&lt;br /&gt;
|0x8182&lt;br /&gt;
|-&lt;br /&gt;
|setvehgoalpos&lt;br /&gt;
|0x822D&lt;br /&gt;
|0x8183&lt;br /&gt;
|-&lt;br /&gt;
|setgoalyaw&lt;br /&gt;
|0x822E&lt;br /&gt;
|0x8184&lt;br /&gt;
|-&lt;br /&gt;
|cleargoalyaw&lt;br /&gt;
|0x822F&lt;br /&gt;
|0x8185&lt;br /&gt;
|-&lt;br /&gt;
|settargetyaw&lt;br /&gt;
|0x8230&lt;br /&gt;
|0x8186&lt;br /&gt;
|-&lt;br /&gt;
|cleartargetyaw&lt;br /&gt;
|0x8231&lt;br /&gt;
|0x8187&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_helisetai&lt;br /&gt;
|0x8232&lt;br /&gt;
|0x8188&lt;br /&gt;
|-&lt;br /&gt;
|setturrettargetvec&lt;br /&gt;
|0x8233&lt;br /&gt;
|0x8189&lt;br /&gt;
|-&lt;br /&gt;
|setturrettargetent&lt;br /&gt;
|0x8234&lt;br /&gt;
|0x818a&lt;br /&gt;
|-&lt;br /&gt;
|clearturrettarget&lt;br /&gt;
|0x8235&lt;br /&gt;
|0x818b&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_canturrettargetpoint&lt;br /&gt;
|0x8236&lt;br /&gt;
|0x818c&lt;br /&gt;
|-&lt;br /&gt;
|setlookatent&lt;br /&gt;
|0x8237&lt;br /&gt;
|0x818d&lt;br /&gt;
|-&lt;br /&gt;
|clearlookatent&lt;br /&gt;
|0x8238&lt;br /&gt;
|0x818e&lt;br /&gt;
|-&lt;br /&gt;
|setvehweapon&lt;br /&gt;
|0x8239&lt;br /&gt;
|0x818f&lt;br /&gt;
|-&lt;br /&gt;
|fireweapon&lt;br /&gt;
|0x823A&lt;br /&gt;
|0x8190&lt;br /&gt;
|-&lt;br /&gt;
|vehicleturretcontrolon&lt;br /&gt;
|0x823B&lt;br /&gt;
|0x8191&lt;br /&gt;
|-&lt;br /&gt;
|vehicleturretcontroloff&lt;br /&gt;
|0x8200&lt;br /&gt;
|0x8192&lt;br /&gt;
|-&lt;br /&gt;
|isturretready&lt;br /&gt;
|0x8201&lt;br /&gt;
|0x8193&lt;br /&gt;
|-&lt;br /&gt;
|vehicledriveto&lt;br /&gt;
|0x8202&lt;br /&gt;
|0x8194&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_dospawn&lt;br /&gt;
|0x8203&lt;br /&gt;
|0x8195&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_isphysveh&lt;br /&gt;
|0x8204&lt;br /&gt;
|0x8196&lt;br /&gt;
|-&lt;br /&gt;
|vehphys_crash&lt;br /&gt;
|0x8205&lt;br /&gt;
|0x8197&lt;br /&gt;
|-&lt;br /&gt;
|vehphys_launch&lt;br /&gt;
|0x8206&lt;br /&gt;
|0x8198&lt;br /&gt;
|-&lt;br /&gt;
|vehphys_disablecrashing&lt;br /&gt;
|0x8207&lt;br /&gt;
|0x8199&lt;br /&gt;
|-&lt;br /&gt;
|vehphys_enablecrashing&lt;br /&gt;
|0x8208&lt;br /&gt;
|0x819a&lt;br /&gt;
|-&lt;br /&gt;
|vehphys_setspeed&lt;br /&gt;
|0x8209&lt;br /&gt;
|0x819b&lt;br /&gt;
|-&lt;br /&gt;
|vehphys_setconveyorbelt&lt;br /&gt;
|0x820A&lt;br /&gt;
|0x819c&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- helicopter --&amp;gt;&lt;br /&gt;
|freehelicopter&lt;br /&gt;
|0x820B&lt;br /&gt;
|0x819D&lt;br /&gt;
|-&lt;br /&gt;
|setdamagestage&lt;br /&gt;
|0x8002&lt;br /&gt;
|0x82F2&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- hud element --&amp;gt;&lt;br /&gt;
|settext&lt;br /&gt;
|0x80b6&lt;br /&gt;
|0x827d&lt;br /&gt;
|-&lt;br /&gt;
|clearalltextafterhudelem&lt;br /&gt;
|0x80b7&lt;br /&gt;
|0x827e&lt;br /&gt;
|-&lt;br /&gt;
|setshader&lt;br /&gt;
|0x80b8&lt;br /&gt;
|0x827f&lt;br /&gt;
|-&lt;br /&gt;
|settargetent&lt;br /&gt;
|0x80b9&lt;br /&gt;
|0x8280&lt;br /&gt;
|-&lt;br /&gt;
|cleartargetent&lt;br /&gt;
|0x80ba&lt;br /&gt;
|0x8281&lt;br /&gt;
|-&lt;br /&gt;
|settimer&lt;br /&gt;
|0x80bb&lt;br /&gt;
|0x8282&lt;br /&gt;
|-&lt;br /&gt;
|settimerup&lt;br /&gt;
|0x80bc&lt;br /&gt;
|0x8283&lt;br /&gt;
|-&lt;br /&gt;
|settimerstatic&lt;br /&gt;
|0x80bd&lt;br /&gt;
|0x8284&lt;br /&gt;
|-&lt;br /&gt;
|settenthstimer&lt;br /&gt;
|0x80be&lt;br /&gt;
|0x8285&lt;br /&gt;
|-&lt;br /&gt;
|settenthstimerup&lt;br /&gt;
|0x80bf&lt;br /&gt;
|0x8286&lt;br /&gt;
|-&lt;br /&gt;
|settenthstimerstatic&lt;br /&gt;
|0x80c0&lt;br /&gt;
|0x8287&lt;br /&gt;
|-&lt;br /&gt;
|setclock&lt;br /&gt;
|0x80c1&lt;br /&gt;
|0x8288&lt;br /&gt;
|-&lt;br /&gt;
|setclockup&lt;br /&gt;
|0x80c2&lt;br /&gt;
|0x8289&lt;br /&gt;
|-&lt;br /&gt;
|setvalue&lt;br /&gt;
|0x80c3&lt;br /&gt;
|0x828a&lt;br /&gt;
|-&lt;br /&gt;
|setwaypoint&lt;br /&gt;
|0x80c4&lt;br /&gt;
|0x828b&lt;br /&gt;
|-&lt;br /&gt;
|rotatingicon&lt;br /&gt;
|0x80c5&lt;br /&gt;
|0x828c&lt;br /&gt;
|-&lt;br /&gt;
|secondaryarrow&lt;br /&gt;
|0x807b&lt;br /&gt;
|0x828d&lt;br /&gt;
|-&lt;br /&gt;
|setwaypointiconoffscreenonly&lt;br /&gt;
|0x807c&lt;br /&gt;
|0x828e&lt;br /&gt;
|-&lt;br /&gt;
|fadeovertime&lt;br /&gt;
|0x807d&lt;br /&gt;
|0x828f&lt;br /&gt;
|-&lt;br /&gt;
|scaleovertime&lt;br /&gt;
|0x807e&lt;br /&gt;
|0x8290&lt;br /&gt;
|-&lt;br /&gt;
|moveovertime&lt;br /&gt;
|0x807f&lt;br /&gt;
|0x8291&lt;br /&gt;
|-&lt;br /&gt;
|reset&lt;br /&gt;
|0x8080&lt;br /&gt;
|0x8292&lt;br /&gt;
|-&lt;br /&gt;
|destroy&lt;br /&gt;
|0x8081&lt;br /&gt;
|0x8293&lt;br /&gt;
|-&lt;br /&gt;
|setpulsefx&lt;br /&gt;
|0x8082&lt;br /&gt;
|0x8294&lt;br /&gt;
|-&lt;br /&gt;
|setplayernamestring&lt;br /&gt;
|0x8083&lt;br /&gt;
|0x8295&lt;br /&gt;
|-&lt;br /&gt;
|changefontscaleovertime&lt;br /&gt;
|N/A&lt;br /&gt;
|0x8296&lt;br /&gt;
|-&lt;br /&gt;
|fadeovertime2&lt;br /&gt;
|0x830b&lt;br /&gt;
|N/A&lt;br /&gt;
|-&lt;br /&gt;
|scaleovertime2&lt;br /&gt;
|0x830c&lt;br /&gt;
|N/A&lt;br /&gt;
|-&lt;br /&gt;
|moveovertime2&lt;br /&gt;
|0x8084&lt;br /&gt;
|N/A&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- client? --&amp;gt;&lt;br /&gt;
|getorigin&lt;br /&gt;
|0x808E&lt;br /&gt;
|0x82a0&lt;br /&gt;
|-&lt;br /&gt;
|useby&lt;br /&gt;
|0x8092&lt;br /&gt;
|0x82a4&lt;br /&gt;
|-&lt;br /&gt;
|playsound&lt;br /&gt;
|0x8093&lt;br /&gt;
|0x82a5&lt;br /&gt;
|-&lt;br /&gt;
|playsoundasmaster&lt;br /&gt;
|0x806E&lt;br /&gt;
|0x82af&lt;br /&gt;
|-&lt;br /&gt;
|playsoundtoteam&lt;br /&gt;
|0x8003&lt;br /&gt;
|0x82f3&lt;br /&gt;
|-&lt;br /&gt;
|playsoundtoplayer&lt;br /&gt;
|0x8004&lt;br /&gt;
|0x82f4&lt;br /&gt;
|-&lt;br /&gt;
|playloopsound&lt;br /&gt;
|0x806F&lt;br /&gt;
|0x82b0&lt;br /&gt;
|-&lt;br /&gt;
|getnormalhealth&lt;br /&gt;
|0x8074&lt;br /&gt;
|0x82b5&lt;br /&gt;
|-&lt;br /&gt;
|setnormalhealth&lt;br /&gt;
|0x804C&lt;br /&gt;
|0x82b6&lt;br /&gt;
|-&lt;br /&gt;
|show&lt;br /&gt;
|0x804F&lt;br /&gt;
|0x82b9&lt;br /&gt;
|-&lt;br /&gt;
|hide&lt;br /&gt;
|0x8050&lt;br /&gt;
|0x82ba&lt;br /&gt;
|-&lt;br /&gt;
|playerhide&lt;br /&gt;
|0x8005&lt;br /&gt;
|0x82f5&lt;br /&gt;
|-&lt;br /&gt;
|showtoplayer&lt;br /&gt;
|0x8006&lt;br /&gt;
|0x82f6&lt;br /&gt;
|-&lt;br /&gt;
|enableplayeruse&lt;br /&gt;
|0x8007&lt;br /&gt;
|0x82f7&lt;br /&gt;
|-&lt;br /&gt;
|disableplayeruse&lt;br /&gt;
|0x8008&lt;br /&gt;
|0x82f8&lt;br /&gt;
|-&lt;br /&gt;
|setscriptmoverkillcam&lt;br /&gt;
|0x830A&lt;br /&gt;
|0x830a&lt;br /&gt;
|-&lt;br /&gt;
|makescrambler&lt;br /&gt;
|0x8009&lt;br /&gt;
|0x82f9&lt;br /&gt;
|-&lt;br /&gt;
|makeportableradar&lt;br /&gt;
|0x800A&lt;br /&gt;
|0x82fa&lt;br /&gt;
|-&lt;br /&gt;
|maketrophysystem&lt;br /&gt;
|0x800B&lt;br /&gt;
|0x82fb&lt;br /&gt;
|-&lt;br /&gt;
|setmode&lt;br /&gt;
|0x8060&lt;br /&gt;
|0x82ca&lt;br /&gt;
|-&lt;br /&gt;
|getmode&lt;br /&gt;
|0x8061&lt;br /&gt;
|0x82cb&lt;br /&gt;
|-&lt;br /&gt;
|placespawnpoint&lt;br /&gt;
|0x800C&lt;br /&gt;
|0x82fc&lt;br /&gt;
|-&lt;br /&gt;
|setteamfortrigger&lt;br /&gt;
|0x800D&lt;br /&gt;
|0x82fd&lt;br /&gt;
|-&lt;br /&gt;
|clientclaimtrigger&lt;br /&gt;
|0x800E&lt;br /&gt;
|0x82fe&lt;br /&gt;
|-&lt;br /&gt;
|clientreleasetrigger&lt;br /&gt;
|0x800F&lt;br /&gt;
|0x82ff&lt;br /&gt;
|-&lt;br /&gt;
|releaseclaimedtrigger&lt;br /&gt;
|0x8010&lt;br /&gt;
|0x8300&lt;br /&gt;
|-&lt;br /&gt;
|isusingonlinedataoffline&lt;br /&gt;
|0x8011&lt;br /&gt;
|0x8301&lt;br /&gt;
|-&lt;br /&gt;
|getrestedtime&lt;br /&gt;
|0x8012&lt;br /&gt;
|0x8302&lt;br /&gt;
|-&lt;br /&gt;
|sendleaderboards&lt;br /&gt;
|0x8013&lt;br /&gt;
|0x8303&lt;br /&gt;
|-&lt;br /&gt;
|logstring&lt;br /&gt;
|0x8020&lt;br /&gt;
|0x82ec&lt;br /&gt;
|-&lt;br /&gt;
|isonladder&lt;br /&gt;
|0x8014&lt;br /&gt;
|0x8304&lt;br /&gt;
|-&lt;br /&gt;
|startragdoll&lt;br /&gt;
|0x801E&lt;br /&gt;
|0x82ea&lt;br /&gt;
|-&lt;br /&gt;
|getcorpseanim&lt;br /&gt;
|0x8015&lt;br /&gt;
|0x8305&lt;br /&gt;
|-&lt;br /&gt;
|playerforcedeathanim&lt;br /&gt;
|0x8016&lt;br /&gt;
|0x8306&lt;br /&gt;
|-&lt;br /&gt;
|startac130&lt;br /&gt;
|0x8307&lt;br /&gt;
|0x8307&lt;br /&gt;
|-&lt;br /&gt;
|stopac130&lt;br /&gt;
|0x8308&lt;br /&gt;
|0x8308&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Function List ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!rowspan=&amp;quot;2&amp;quot;|Function&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|MW3&lt;br /&gt;
|-&lt;br /&gt;
!PC ID&lt;br /&gt;
!PS3/XBOX ID&lt;br /&gt;
&amp;lt;!-- funcion list 1 --&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|createprintchannel&lt;br /&gt;
|N/A&lt;br /&gt;
|0x1&lt;br /&gt;
|-&lt;br /&gt;
|setprintchannel&lt;br /&gt;
|0xe&lt;br /&gt;
|0x2&lt;br /&gt;
|-&lt;br /&gt;
|print&lt;br /&gt;
|0xf&lt;br /&gt;
|0x3&lt;br /&gt;
|-&lt;br /&gt;
|println&lt;br /&gt;
|0x10&lt;br /&gt;
|0x4&lt;br /&gt;
|-&lt;br /&gt;
|print3d&lt;br /&gt;
|0x11&lt;br /&gt;
|0x5&lt;br /&gt;
|-&lt;br /&gt;
|line&lt;br /&gt;
|0x12&lt;br /&gt;
|0x6&lt;br /&gt;
|-&lt;br /&gt;
|precacheturret&lt;br /&gt;
|N/A&lt;br /&gt;
|0x7&lt;br /&gt;
|-&lt;br /&gt;
|getweaponarray&lt;br /&gt;
|N/A&lt;br /&gt;
|0x8&lt;br /&gt;
|-&lt;br /&gt;
|spawnturret&lt;br /&gt;
|0x13&lt;br /&gt;
|0x9&lt;br /&gt;
|-&lt;br /&gt;
|canspawnturret&lt;br /&gt;
|0x14&lt;br /&gt;
|0xa&lt;br /&gt;
|-&lt;br /&gt;
|assert&lt;br /&gt;
|0x15&lt;br /&gt;
|0xb&lt;br /&gt;
|-&lt;br /&gt;
|assertex&lt;br /&gt;
|0x26&lt;br /&gt;
|0xc&lt;br /&gt;
|-&lt;br /&gt;
|assertmsg&lt;br /&gt;
|0x27&lt;br /&gt;
|0xd&lt;br /&gt;
|-&lt;br /&gt;
|isdefined&lt;br /&gt;
|0x28&lt;br /&gt;
|0xe&lt;br /&gt;
|-&lt;br /&gt;
|isstring&lt;br /&gt;
|0x29&lt;br /&gt;
|0xf&lt;br /&gt;
|-&lt;br /&gt;
|setdvar&lt;br /&gt;
|0x2a&lt;br /&gt;
|0x10&lt;br /&gt;
|-&lt;br /&gt;
|setdynamicdvar&lt;br /&gt;
|0x2b&lt;br /&gt;
|0x11&lt;br /&gt;
|-&lt;br /&gt;
|setdvarifuninitialized&lt;br /&gt;
|0x2c&lt;br /&gt;
|0x12&lt;br /&gt;
|-&lt;br /&gt;
|setdevdvar&lt;br /&gt;
|0x2d&lt;br /&gt;
|0x13&lt;br /&gt;
|-&lt;br /&gt;
|setdevdvarifuninitialized&lt;br /&gt;
|0x2e&lt;br /&gt;
|0x14&lt;br /&gt;
|-&lt;br /&gt;
|getdvar&lt;br /&gt;
|0x2f&lt;br /&gt;
|0x15&lt;br /&gt;
|-&lt;br /&gt;
|getdvarint&lt;br /&gt;
|0x30&lt;br /&gt;
|0x16&lt;br /&gt;
|-&lt;br /&gt;
|getdvarfloat&lt;br /&gt;
|0x31&lt;br /&gt;
|0x17&lt;br /&gt;
|-&lt;br /&gt;
|getdvarvector&lt;br /&gt;
|0x32&lt;br /&gt;
|0x18&lt;br /&gt;
|-&lt;br /&gt;
|gettime&lt;br /&gt;
|0x33&lt;br /&gt;
|0x19&lt;br /&gt;
|-&lt;br /&gt;
|getentbynum&lt;br /&gt;
|0x34&lt;br /&gt;
|0x1a&lt;br /&gt;
|-&lt;br /&gt;
|getweaponmodel&lt;br /&gt;
|0x35&lt;br /&gt;
|0x1b&lt;br /&gt;
|-&lt;br /&gt;
|getweaponhidetags&lt;br /&gt;
|0x51&lt;br /&gt;
|0x1c&lt;br /&gt;
|-&lt;br /&gt;
|getanimlength&lt;br /&gt;
|0x52&lt;br /&gt;
|0x1d&lt;br /&gt;
|-&lt;br /&gt;
|animhasnotetrack&lt;br /&gt;
|0x53&lt;br /&gt;
|0x1e&lt;br /&gt;
|-&lt;br /&gt;
|getnotetracktimes&lt;br /&gt;
|0x54&lt;br /&gt;
|0x1f&lt;br /&gt;
|-&lt;br /&gt;
|spawn&lt;br /&gt;
|0x55&lt;br /&gt;
|0x20&lt;br /&gt;
|-&lt;br /&gt;
|spawnloopsound&lt;br /&gt;
|0x56&lt;br /&gt;
|0x21&lt;br /&gt;
|-&lt;br /&gt;
|bullettrace&lt;br /&gt;
|0x57&lt;br /&gt;
|0x22&lt;br /&gt;
|-&lt;br /&gt;
|bullettracepassed&lt;br /&gt;
|0x58&lt;br /&gt;
|0x23&lt;br /&gt;
|-&lt;br /&gt;
|sighttracepassed&lt;br /&gt;
|0x74&lt;br /&gt;
|0x24&lt;br /&gt;
|-&lt;br /&gt;
|physicstrace&lt;br /&gt;
|0x75&lt;br /&gt;
|0x25&lt;br /&gt;
|-&lt;br /&gt;
|physicstracenormal&lt;br /&gt;
|0x76&lt;br /&gt;
|0x26&lt;br /&gt;
|-&lt;br /&gt;
|playerphysicstrace&lt;br /&gt;
|0x77&lt;br /&gt;
|0x27&lt;br /&gt;
|-&lt;br /&gt;
|getgroundposition&lt;br /&gt;
|0x78&lt;br /&gt;
|0x28&lt;br /&gt;
|-&lt;br /&gt;
|getmovedelta&lt;br /&gt;
|0x79&lt;br /&gt;
|0x29&lt;br /&gt;
|-&lt;br /&gt;
|getangledelta&lt;br /&gt;
|0x7a&lt;br /&gt;
|0x2a&lt;br /&gt;
|-&lt;br /&gt;
|getnorthyaw&lt;br /&gt;
|0x7b&lt;br /&gt;
|0x2b&lt;br /&gt;
|-&lt;br /&gt;
|setnorthyaw&lt;br /&gt;
|0x96&lt;br /&gt;
|0x2c&lt;br /&gt;
|-&lt;br /&gt;
|setslowmotion&lt;br /&gt;
|0x97&lt;br /&gt;
|0x2d&lt;br /&gt;
|-&lt;br /&gt;
|randomint&lt;br /&gt;
|0x98&lt;br /&gt;
|0x2e&lt;br /&gt;
|-&lt;br /&gt;
|randomfloat&lt;br /&gt;
|0x99&lt;br /&gt;
|0x2f&lt;br /&gt;
|-&lt;br /&gt;
|randomintrange&lt;br /&gt;
|0x9a&lt;br /&gt;
|0x30&lt;br /&gt;
|-&lt;br /&gt;
|randomfloatrange&lt;br /&gt;
|0x9b&lt;br /&gt;
|0x31&lt;br /&gt;
|-&lt;br /&gt;
|sin&lt;br /&gt;
|0x9c&lt;br /&gt;
|0x32&lt;br /&gt;
|-&lt;br /&gt;
|cos&lt;br /&gt;
|0x9d&lt;br /&gt;
|0x33&lt;br /&gt;
|-&lt;br /&gt;
|tan&lt;br /&gt;
|0x9e&lt;br /&gt;
|0x34&lt;br /&gt;
|-&lt;br /&gt;
|asin&lt;br /&gt;
|0x9f&lt;br /&gt;
|0x35&lt;br /&gt;
|-&lt;br /&gt;
|acos&lt;br /&gt;
|0xa0&lt;br /&gt;
|0x36&lt;br /&gt;
|-&lt;br /&gt;
|atan&lt;br /&gt;
|0xa1&lt;br /&gt;
|0x37&lt;br /&gt;
|-&lt;br /&gt;
|int&lt;br /&gt;
|0xa2&lt;br /&gt;
|0x38&lt;br /&gt;
|-&lt;br /&gt;
|float&lt;br /&gt;
|0xa3&lt;br /&gt;
|0x39&lt;br /&gt;
|-&lt;br /&gt;
|abs&lt;br /&gt;
|0xa4&lt;br /&gt;
|0x3a&lt;br /&gt;
|-&lt;br /&gt;
|min&lt;br /&gt;
|0xa5&lt;br /&gt;
|0x3b&lt;br /&gt;
|-&lt;br /&gt;
|max&lt;br /&gt;
|0xc6&lt;br /&gt;
|0x3c&lt;br /&gt;
|-&lt;br /&gt;
|floor&lt;br /&gt;
|0xc7&lt;br /&gt;
|0x3d&lt;br /&gt;
|-&lt;br /&gt;
|ceil&lt;br /&gt;
|0xc8&lt;br /&gt;
|0x3e&lt;br /&gt;
|-&lt;br /&gt;
|exp&lt;br /&gt;
|0xc9&lt;br /&gt;
|0x3f&lt;br /&gt;
|-&lt;br /&gt;
|log&lt;br /&gt;
|0xca&lt;br /&gt;
|0x40&lt;br /&gt;
|-&lt;br /&gt;
|sqrt&lt;br /&gt;
|0xcb&lt;br /&gt;
|0x41&lt;br /&gt;
|-&lt;br /&gt;
|squared&lt;br /&gt;
|0xcc&lt;br /&gt;
|0x42&lt;br /&gt;
|-&lt;br /&gt;
|clamp&lt;br /&gt;
|0xcd&lt;br /&gt;
|0x43&lt;br /&gt;
|-&lt;br /&gt;
|angleclamp&lt;br /&gt;
|0xce&lt;br /&gt;
|0x44&lt;br /&gt;
|-&lt;br /&gt;
|angleclamp180&lt;br /&gt;
|0xcf&lt;br /&gt;
|0x45&lt;br /&gt;
|-&lt;br /&gt;
|vectorfromlinetopoint&lt;br /&gt;
|0xd0&lt;br /&gt;
|0x46&lt;br /&gt;
|-&lt;br /&gt;
|pointonsegmentnearesttopoint&lt;br /&gt;
|0xd1&lt;br /&gt;
|0x47&lt;br /&gt;
|-&lt;br /&gt;
|distance&lt;br /&gt;
|0xd2&lt;br /&gt;
|0x48&lt;br /&gt;
|-&lt;br /&gt;
|distance2d&lt;br /&gt;
|0xd3&lt;br /&gt;
|0x49&lt;br /&gt;
|-&lt;br /&gt;
|distancesquared&lt;br /&gt;
|0xd4&lt;br /&gt;
|0x4a&lt;br /&gt;
|-&lt;br /&gt;
|length&lt;br /&gt;
|0xd5&lt;br /&gt;
|0x4b&lt;br /&gt;
|-&lt;br /&gt;
|lengthsquared&lt;br /&gt;
|0xd6&lt;br /&gt;
|0x4c&lt;br /&gt;
|-&lt;br /&gt;
|closer&lt;br /&gt;
|0xd7&lt;br /&gt;
|0x4d&lt;br /&gt;
|-&lt;br /&gt;
|vectordot&lt;br /&gt;
|0xd8&lt;br /&gt;
|0x4e&lt;br /&gt;
|-&lt;br /&gt;
|vectornormalize&lt;br /&gt;
|0xf6&lt;br /&gt;
|0x4f&lt;br /&gt;
|-&lt;br /&gt;
|vectortoangles&lt;br /&gt;
|0xf7&lt;br /&gt;
|0x50&lt;br /&gt;
|-&lt;br /&gt;
|vectortoyaw&lt;br /&gt;
|0xf8&lt;br /&gt;
|0x51&lt;br /&gt;
|-&lt;br /&gt;
|vectorlerp&lt;br /&gt;
|0xf9&lt;br /&gt;
|0x52&lt;br /&gt;
|-&lt;br /&gt;
|anglestoup&lt;br /&gt;
|0xfa&lt;br /&gt;
|0x53&lt;br /&gt;
|-&lt;br /&gt;
|anglestoright&lt;br /&gt;
|0xfb&lt;br /&gt;
|0x54&lt;br /&gt;
|-&lt;br /&gt;
|anglestoforward&lt;br /&gt;
|0xfc&lt;br /&gt;
|0x55&lt;br /&gt;
|-&lt;br /&gt;
|combineangles&lt;br /&gt;
|0xfd&lt;br /&gt;
|0x56&lt;br /&gt;
|-&lt;br /&gt;
|transformmove&lt;br /&gt;
|0xfe&lt;br /&gt;
|0x57&lt;br /&gt;
|-&lt;br /&gt;
|issubstr&lt;br /&gt;
|0xff&lt;br /&gt;
|0x58&lt;br /&gt;
|-&lt;br /&gt;
|isendstr&lt;br /&gt;
|0x100&lt;br /&gt;
|0x59&lt;br /&gt;
|-&lt;br /&gt;
|getsubstr&lt;br /&gt;
|0x101&lt;br /&gt;
|0x5a&lt;br /&gt;
|-&lt;br /&gt;
|tolower&lt;br /&gt;
|0x102&lt;br /&gt;
|0x5b&lt;br /&gt;
|-&lt;br /&gt;
|strtok&lt;br /&gt;
|0x103&lt;br /&gt;
|0x5c&lt;br /&gt;
|-&lt;br /&gt;
|stricmp&lt;br /&gt;
|0x104&lt;br /&gt;
|0x5d&lt;br /&gt;
|-&lt;br /&gt;
|ambientplay&lt;br /&gt;
|0x105&lt;br /&gt;
|0x5e&lt;br /&gt;
|-&lt;br /&gt;
|ambientstop&lt;br /&gt;
|0x125&lt;br /&gt;
|0x5f&lt;br /&gt;
|-&lt;br /&gt;
|precachemodel&lt;br /&gt;
|0x126&lt;br /&gt;
|0x60&lt;br /&gt;
|-&lt;br /&gt;
|precacheshellshock&lt;br /&gt;
|0x127&lt;br /&gt;
|0x61&lt;br /&gt;
|-&lt;br /&gt;
|precacheitem&lt;br /&gt;
|0x128&lt;br /&gt;
|0x62&lt;br /&gt;
|-&lt;br /&gt;
|precacheshader&lt;br /&gt;
|0x129&lt;br /&gt;
|0x63&lt;br /&gt;
|-&lt;br /&gt;
|precachestring&lt;br /&gt;
|0x12a&lt;br /&gt;
|0x64&lt;br /&gt;
|-&lt;br /&gt;
|precachemenu&lt;br /&gt;
|0x12b&lt;br /&gt;
|0x65&lt;br /&gt;
|-&lt;br /&gt;
|precacherumble&lt;br /&gt;
|0x12c&lt;br /&gt;
|0x66&lt;br /&gt;
|-&lt;br /&gt;
|precachelocationselector&lt;br /&gt;
|0x12d&lt;br /&gt;
|0x67&lt;br /&gt;
|-&lt;br /&gt;
|precacheleaderboards&lt;br /&gt;
|0x12e&lt;br /&gt;
|0x68&lt;br /&gt;
|-&lt;br /&gt;
|precacheheadicon&lt;br /&gt;
|0x146&lt;br /&gt;
|0xe9&lt;br /&gt;
|-&lt;br /&gt;
|loadfx&lt;br /&gt;
|0x12f&lt;br /&gt;
|0x1c5&lt;br /&gt;
|-&lt;br /&gt;
|playfx&lt;br /&gt;
|0x130&lt;br /&gt;
|0x1c6&lt;br /&gt;
|-&lt;br /&gt;
|unknown&lt;br /&gt;
|N/A&lt;br /&gt;
|0x69&lt;br /&gt;
|-&lt;br /&gt;
|playfxontag&lt;br /&gt;
|0x131&lt;br /&gt;
|0x6a&lt;br /&gt;
|-&lt;br /&gt;
|stopfxontag&lt;br /&gt;
|0x132&lt;br /&gt;
|0x6b&lt;br /&gt;
|-&lt;br /&gt;
|killfxontag&lt;br /&gt;
|N/A&lt;br /&gt;
|0x6c&lt;br /&gt;
|-&lt;br /&gt;
|playloopedfx&lt;br /&gt;
|0x133&lt;br /&gt;
|0x6d&lt;br /&gt;
|-&lt;br /&gt;
|spawnfx&lt;br /&gt;
|0x134&lt;br /&gt;
|0x6e&lt;br /&gt;
|-&lt;br /&gt;
|triggerfx&lt;br /&gt;
|0x135&lt;br /&gt;
|0x6f&lt;br /&gt;
|-&lt;br /&gt;
|playfxontagforclients&lt;br /&gt;
|0x136&lt;br /&gt;
|0x70&lt;br /&gt;
|-&lt;br /&gt;
|physicsexplosionsphere&lt;br /&gt;
|0x15a&lt;br /&gt;
|0x71&lt;br /&gt;
|-&lt;br /&gt;
|physicsexplosioncylinder&lt;br /&gt;
|0x15b&lt;br /&gt;
|0x72&lt;br /&gt;
|-&lt;br /&gt;
|physicsjolt&lt;br /&gt;
|0x15c&lt;br /&gt;
|0x73&lt;br /&gt;
|-&lt;br /&gt;
|physicsjitter&lt;br /&gt;
|0x15d&lt;br /&gt;
|0x74&lt;br /&gt;
|-&lt;br /&gt;
|setexpfog&lt;br /&gt;
|0x15e&lt;br /&gt;
|0x75&lt;br /&gt;
|-&lt;br /&gt;
|isexplosivedamagemod&lt;br /&gt;
|0x15f&lt;br /&gt;
|0x76&lt;br /&gt;
|-&lt;br /&gt;
|radiusdamage&lt;br /&gt;
|0x160&lt;br /&gt;
|0x77&lt;br /&gt;
|-&lt;br /&gt;
|setplayerignoreradiusdamage&lt;br /&gt;
|0x161&lt;br /&gt;
|0x78&lt;br /&gt;
|-&lt;br /&gt;
|glassradiusdamage&lt;br /&gt;
|0x162&lt;br /&gt;
|0x79&lt;br /&gt;
|-&lt;br /&gt;
|earthquake&lt;br /&gt;
|0x163&lt;br /&gt;
|0x7a&lt;br /&gt;
|-&lt;br /&gt;
|getnumparts&lt;br /&gt;
|0x164&lt;br /&gt;
|0x7b&lt;br /&gt;
|-&lt;br /&gt;
|getpartname&lt;br /&gt;
|0x182&lt;br /&gt;
|0x7c&lt;br /&gt;
|-&lt;br /&gt;
|weaponfiretime&lt;br /&gt;
|0x183&lt;br /&gt;
|0x7d&lt;br /&gt;
|-&lt;br /&gt;
|weaponclipsize&lt;br /&gt;
|0x184&lt;br /&gt;
|0x7e&lt;br /&gt;
|-&lt;br /&gt;
|weaponisauto&lt;br /&gt;
|0x185&lt;br /&gt;
|0x7f&lt;br /&gt;
|-&lt;br /&gt;
|weaponissemiauto&lt;br /&gt;
|0x186&lt;br /&gt;
|0x80&lt;br /&gt;
|-&lt;br /&gt;
|weaponisboltaction&lt;br /&gt;
|0x187&lt;br /&gt;
|0x81&lt;br /&gt;
|-&lt;br /&gt;
|weaponinheritsperks&lt;br /&gt;
|0x188&lt;br /&gt;
|0x82&lt;br /&gt;
|-&lt;br /&gt;
|weaponburstcount&lt;br /&gt;
|0x189&lt;br /&gt;
|0x83&lt;br /&gt;
|-&lt;br /&gt;
|weapontype&lt;br /&gt;
|0x18a&lt;br /&gt;
|0x84&lt;br /&gt;
|-&lt;br /&gt;
|weaponclass&lt;br /&gt;
|0x18b&lt;br /&gt;
|0x85&lt;br /&gt;
|-&lt;br /&gt;
|weaponinventorytype&lt;br /&gt;
|0x1b5&lt;br /&gt;
|0x86&lt;br /&gt;
|-&lt;br /&gt;
|weaponstartammo&lt;br /&gt;
|0x1b6&lt;br /&gt;
|0x87&lt;br /&gt;
|-&lt;br /&gt;
|weaponmaxammo&lt;br /&gt;
|0x1b7&lt;br /&gt;
|0x88&lt;br /&gt;
|-&lt;br /&gt;
|weaponaltweaponname&lt;br /&gt;
|0x1b8&lt;br /&gt;
|0x89&lt;br /&gt;
|-&lt;br /&gt;
|isweaponcliponly&lt;br /&gt;
|0x1b9&lt;br /&gt;
|0x8a&lt;br /&gt;
|-&lt;br /&gt;
|isweapondetonationtimed&lt;br /&gt;
|0x1ba&lt;br /&gt;
|0x8b&lt;br /&gt;
|-&lt;br /&gt;
|weaponhasthermalscope&lt;br /&gt;
|0x1bb&lt;br /&gt;
|0x8c&lt;br /&gt;
|-&lt;br /&gt;
|getvehiclenode&lt;br /&gt;
|0x1bc&lt;br /&gt;
|0x8d&lt;br /&gt;
|-&lt;br /&gt;
|getvehiclenodearray&lt;br /&gt;
|0x1bd&lt;br /&gt;
|0x8e&lt;br /&gt;
|-&lt;br /&gt;
|getallvehiclenodes&lt;br /&gt;
|0x1be&lt;br /&gt;
|0x8f&lt;br /&gt;
|-&lt;br /&gt;
|getnumvehicles&lt;br /&gt;
|0x1bf&lt;br /&gt;
|0x90&lt;br /&gt;
|-&lt;br /&gt;
|precachevehicle&lt;br /&gt;
|0x1c0&lt;br /&gt;
|0x91&lt;br /&gt;
|-&lt;br /&gt;
|spawnvehicle&lt;br /&gt;
|0x1c1&lt;br /&gt;
|0x92&lt;br /&gt;
|-&lt;br /&gt;
|getarray&lt;br /&gt;
|0x1c2&lt;br /&gt;
|0x93&lt;br /&gt;
|-&lt;br /&gt;
|getspawnerarray&lt;br /&gt;
|0x198&lt;br /&gt;
|0x94&lt;br /&gt;
|-&lt;br /&gt;
|playrumbleonposition&lt;br /&gt;
|0x199&lt;br /&gt;
|0x95&lt;br /&gt;
|-&lt;br /&gt;
|playrumblelooponposition&lt;br /&gt;
|0x19a&lt;br /&gt;
|0x96&lt;br /&gt;
|-&lt;br /&gt;
|stopallrumbles&lt;br /&gt;
|0x19b&lt;br /&gt;
|0x97&lt;br /&gt;
|-&lt;br /&gt;
|soundexists&lt;br /&gt;
|0x19c&lt;br /&gt;
|0x98&lt;br /&gt;
|-&lt;br /&gt;
|openfile&lt;br /&gt;
|0x19d&lt;br /&gt;
|0x99&lt;br /&gt;
|-&lt;br /&gt;
|closefile&lt;br /&gt;
|0x19e&lt;br /&gt;
|0x9a&lt;br /&gt;
|-&lt;br /&gt;
|fprintln&lt;br /&gt;
|0x19f&lt;br /&gt;
|0x9b&lt;br /&gt;
|-&lt;br /&gt;
|fprintfields&lt;br /&gt;
|0x1a0&lt;br /&gt;
|0x9c&lt;br /&gt;
|-&lt;br /&gt;
|freadln&lt;br /&gt;
|0x1a1&lt;br /&gt;
|0x9d&lt;br /&gt;
|-&lt;br /&gt;
|fgetarg&lt;br /&gt;
|0x1a2&lt;br /&gt;
|0x9e&lt;br /&gt;
|-&lt;br /&gt;
|setminimap&lt;br /&gt;
|0x1a3&lt;br /&gt;
|0x9f&lt;br /&gt;
|-&lt;br /&gt;
|setthermalbodymaterial&lt;br /&gt;
|0x1a4&lt;br /&gt;
|0xa0&lt;br /&gt;
|-&lt;br /&gt;
|getarraykeys&lt;br /&gt;
|0x1a5&lt;br /&gt;
|0xa1&lt;br /&gt;
|-&lt;br /&gt;
|getfirstarraykey&lt;br /&gt;
|0x1a6&lt;br /&gt;
|0xa2&lt;br /&gt;
|-&lt;br /&gt;
|getnextarraykey&lt;br /&gt;
|0x18c&lt;br /&gt;
|0xa3&lt;br /&gt;
|-&lt;br /&gt;
|sortbydistance&lt;br /&gt;
|0x18d&lt;br /&gt;
|0xa4&lt;br /&gt;
|-&lt;br /&gt;
|tablelookup&lt;br /&gt;
|0x18e&lt;br /&gt;
|0xa5&lt;br /&gt;
|-&lt;br /&gt;
|tablelookupbyrow&lt;br /&gt;
|0x18f&lt;br /&gt;
|0xa6&lt;br /&gt;
|-&lt;br /&gt;
|tablelookupistring&lt;br /&gt;
|0x190&lt;br /&gt;
|0xa7&lt;br /&gt;
|-&lt;br /&gt;
|tablelookupistringbyrow&lt;br /&gt;
|0x191&lt;br /&gt;
|0xa8&lt;br /&gt;
|-&lt;br /&gt;
|tablelookuprownum&lt;br /&gt;
|0x192&lt;br /&gt;
|0xa9&lt;br /&gt;
|-&lt;br /&gt;
|getmissileowner&lt;br /&gt;
|0x193&lt;br /&gt;
|0xaa&lt;br /&gt;
|-&lt;br /&gt;
|magicbullet&lt;br /&gt;
|0x194&lt;br /&gt;
|0xab&lt;br /&gt;
|-&lt;br /&gt;
|getweaponflashtagname&lt;br /&gt;
|0x195&lt;br /&gt;
|0xac&lt;br /&gt;
|-&lt;br /&gt;
|averagepoint&lt;br /&gt;
|0x196&lt;br /&gt;
|0xad&lt;br /&gt;
|-&lt;br /&gt;
|averagenormal&lt;br /&gt;
|0x197&lt;br /&gt;
|0xae&lt;br /&gt;
|-&lt;br /&gt;
|getglass&lt;br /&gt;
|0x1a7&lt;br /&gt;
|0xaf&lt;br /&gt;
|-&lt;br /&gt;
|getglassarray&lt;br /&gt;
|0x1a8&lt;br /&gt;
|0xb0&lt;br /&gt;
|-&lt;br /&gt;
|getglassorigin&lt;br /&gt;
|0x1a9&lt;br /&gt;
|0xb1&lt;br /&gt;
|-&lt;br /&gt;
|isglassdestroyed&lt;br /&gt;
|0x1aa&lt;br /&gt;
|0xb2&lt;br /&gt;
|-&lt;br /&gt;
|destroyglass&lt;br /&gt;
|0x1ab&lt;br /&gt;
|0xb3&lt;br /&gt;
|-&lt;br /&gt;
|deleteglass&lt;br /&gt;
|0x1ac&lt;br /&gt;
|0xb4&lt;br /&gt;
|-&lt;br /&gt;
|getentchannelscount&lt;br /&gt;
|0x1ad&lt;br /&gt;
|0xb5&lt;br /&gt;
|-&lt;br /&gt;
|getentchannelname&lt;br /&gt;
|N/A&lt;br /&gt;
|0xb6&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- objective functions --&amp;gt;&lt;br /&gt;
|objective_add&lt;br /&gt;
|0x1af&lt;br /&gt;
|0xb7&lt;br /&gt;
|-&lt;br /&gt;
|objective_delete&lt;br /&gt;
|0x1b0&lt;br /&gt;
|0xb8&lt;br /&gt;
|-&lt;br /&gt;
|objective_state&lt;br /&gt;
|0x1b1&lt;br /&gt;
|0xb9&lt;br /&gt;
|-&lt;br /&gt;
|objective_icon&lt;br /&gt;
|0x1b2&lt;br /&gt;
|0xba&lt;br /&gt;
|-&lt;br /&gt;
|objective_position&lt;br /&gt;
|0x1b3&lt;br /&gt;
|0xbb&lt;br /&gt;
|-&lt;br /&gt;
|objective_current&lt;br /&gt;
|0x1b4&lt;br /&gt;
|0xbc&lt;br /&gt;
|-&lt;br /&gt;
|objective_onentity&lt;br /&gt;
|0x165&lt;br /&gt;
|0xbd&lt;br /&gt;
|-&lt;br /&gt;
|objective_team&lt;br /&gt;
|0x166&lt;br /&gt;
|0xbe&lt;br /&gt;
|-&lt;br /&gt;
|objective_player&lt;br /&gt;
|0x167&lt;br /&gt;
|0xbf&lt;br /&gt;
|-&lt;br /&gt;
|objective_playerteam&lt;br /&gt;
|0x168&lt;br /&gt;
|0xc0&lt;br /&gt;
|-&lt;br /&gt;
|objective_playerenemyteam&lt;br /&gt;
|0x169&lt;br /&gt;
|0xc1&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- function list 2 --&amp;gt;&lt;br /&gt;
|iprintln&lt;br /&gt;
|0x16a&lt;br /&gt;
|0xc2&lt;br /&gt;
|-&lt;br /&gt;
|iprintlnbold&lt;br /&gt;
|0x16b&lt;br /&gt;
|0xc3&lt;br /&gt;
|-&lt;br /&gt;
|logstring&lt;br /&gt;
|0x16c&lt;br /&gt;
|0xc4&lt;br /&gt;
|-&lt;br /&gt;
|getent&lt;br /&gt;
|0x16d&lt;br /&gt;
|0xc5&lt;br /&gt;
|-&lt;br /&gt;
|getentarray&lt;br /&gt;
|0x16e&lt;br /&gt;
|0xc6&lt;br /&gt;
|-&lt;br /&gt;
|spawnplane&lt;br /&gt;
|0x16f&lt;br /&gt;
|0xc7&lt;br /&gt;
|-&lt;br /&gt;
|spawnstruct&lt;br /&gt;
|0x170&lt;br /&gt;
|0xc8&lt;br /&gt;
|-&lt;br /&gt;
|spawnhelicopter&lt;br /&gt;
|0x171&lt;br /&gt;
|0xc9&lt;br /&gt;
|-&lt;br /&gt;
|isalive&lt;br /&gt;
|0x172&lt;br /&gt;
|0xca&lt;br /&gt;
|-&lt;br /&gt;
|isspawner&lt;br /&gt;
|0x173&lt;br /&gt;
|0xcb&lt;br /&gt;
|-&lt;br /&gt;
|createattractorent&lt;br /&gt;
|0x174&lt;br /&gt;
|0xcc&lt;br /&gt;
|-&lt;br /&gt;
|createattractororigin&lt;br /&gt;
|0x175&lt;br /&gt;
|0xcd&lt;br /&gt;
|-&lt;br /&gt;
|createrepulsorent&lt;br /&gt;
|0x176&lt;br /&gt;
|0xce&lt;br /&gt;
|-&lt;br /&gt;
|createrepulsororigin&lt;br /&gt;
|0x177&lt;br /&gt;
|0xcf&lt;br /&gt;
|-&lt;br /&gt;
|deleteattractor&lt;br /&gt;
|0x178&lt;br /&gt;
|0xd0&lt;br /&gt;
|-&lt;br /&gt;
|playsoundatpos&lt;br /&gt;
|0x179&lt;br /&gt;
|0xd1&lt;br /&gt;
|-&lt;br /&gt;
|newhudelem&lt;br /&gt;
|0x17a&lt;br /&gt;
|0x1c7&lt;br /&gt;
|-&lt;br /&gt;
|newclienthudelem&lt;br /&gt;
|0x17b&lt;br /&gt;
|0xd2&lt;br /&gt;
|-&lt;br /&gt;
|newteamhudelem&lt;br /&gt;
|0x17c&lt;br /&gt;
|0xd3&lt;br /&gt;
|-&lt;br /&gt;
|newdamageindicatorhudelem&lt;br /&gt;
|N/A&lt;br /&gt;
|0xd4&lt;br /&gt;
|-&lt;br /&gt;
|resettimeout&lt;br /&gt;
|0x17d&lt;br /&gt;
|0xd5&lt;br /&gt;
|-&lt;br /&gt;
|precachefxteamthermal&lt;br /&gt;
|0x17e&lt;br /&gt;
|0xd6&lt;br /&gt;
|-&lt;br /&gt;
|isplayer&lt;br /&gt;
|0x17f&lt;br /&gt;
|0xd7&lt;br /&gt;
|-&lt;br /&gt;
|isplayernumber&lt;br /&gt;
|0x180&lt;br /&gt;
|0xd8&lt;br /&gt;
|-&lt;br /&gt;
|setsunlight&lt;br /&gt;
|0x39&lt;br /&gt;
|0x191&lt;br /&gt;
|-&lt;br /&gt;
|resetsunlight&lt;br /&gt;
|0x3a&lt;br /&gt;
|0x192&lt;br /&gt;
|-&lt;br /&gt;
|setwinningplayer&lt;br /&gt;
|0x181&lt;br /&gt;
|0xd9&lt;br /&gt;
|-&lt;br /&gt;
|setwinningteam&lt;br /&gt;
|0x137&lt;br /&gt;
|0xda&lt;br /&gt;
|-&lt;br /&gt;
|announcement&lt;br /&gt;
|0x138&lt;br /&gt;
|0xdb&lt;br /&gt;
|-&lt;br /&gt;
|clientannouncement&lt;br /&gt;
|0x139&lt;br /&gt;
|0xdc&lt;br /&gt;
|-&lt;br /&gt;
|getteamscore&lt;br /&gt;
|0x13a&lt;br /&gt;
|0xdd&lt;br /&gt;
|-&lt;br /&gt;
|setteamscore&lt;br /&gt;
|0x13b&lt;br /&gt;
|0xde&lt;br /&gt;
|-&lt;br /&gt;
|setclientnamemode&lt;br /&gt;
|0x13c&lt;br /&gt;
|0xdf&lt;br /&gt;
|-&lt;br /&gt;
|updateclientnames&lt;br /&gt;
|0x13d&lt;br /&gt;
|0xe0&lt;br /&gt;
|-&lt;br /&gt;
|getteamplayersalive&lt;br /&gt;
|0x13e&lt;br /&gt;
|0xe1&lt;br /&gt;
|-&lt;br /&gt;
|logprint&lt;br /&gt;
|0x13f&lt;br /&gt;
|0xe2&lt;br /&gt;
|-&lt;br /&gt;
|worldentnumber&lt;br /&gt;
|0x140&lt;br /&gt;
|0xe3&lt;br /&gt;
|-&lt;br /&gt;
|obituary&lt;br /&gt;
|0x141&lt;br /&gt;
|0xe4&lt;br /&gt;
|-&lt;br /&gt;
|positionwouldtelefrag&lt;br /&gt;
|0x142&lt;br /&gt;
|0xe5&lt;br /&gt;
|-&lt;br /&gt;
|canspawn&lt;br /&gt;
|0x143&lt;br /&gt;
|0xe6&lt;br /&gt;
|-&lt;br /&gt;
|getstarttime&lt;br /&gt;
|0x144&lt;br /&gt;
|0xe7&lt;br /&gt;
|-&lt;br /&gt;
|precachestatusicon&lt;br /&gt;
|0x145&lt;br /&gt;
|0xe8&lt;br /&gt;
|-&lt;br /&gt;
|precacheminimapicon&lt;br /&gt;
|0x147&lt;br /&gt;
|0xea&lt;br /&gt;
|-&lt;br /&gt;
|precachempanim&lt;br /&gt;
|0x148&lt;br /&gt;
|0xeb&lt;br /&gt;
|-&lt;br /&gt;
|restart&lt;br /&gt;
|0x149&lt;br /&gt;
|0xec&lt;br /&gt;
|-&lt;br /&gt;
|exitlevel&lt;br /&gt;
|0x14a&lt;br /&gt;
|0xed&lt;br /&gt;
|-&lt;br /&gt;
|addtestclient&lt;br /&gt;
|0x14b&lt;br /&gt;
|0xee&lt;br /&gt;
|-&lt;br /&gt;
|makedvarserverinfo&lt;br /&gt;
|0x14c&lt;br /&gt;
|0xef&lt;br /&gt;
|-&lt;br /&gt;
|setarchive&lt;br /&gt;
|0x14d&lt;br /&gt;
|0xf0&lt;br /&gt;
|-&lt;br /&gt;
|allclientsprint&lt;br /&gt;
|0x14e&lt;br /&gt;
|0xf1&lt;br /&gt;
|-&lt;br /&gt;
|clientprint&lt;br /&gt;
|0x14f&lt;br /&gt;
|0xf2&lt;br /&gt;
|-&lt;br /&gt;
|mapexists&lt;br /&gt;
|0x150&lt;br /&gt;
|0xf3&lt;br /&gt;
|-&lt;br /&gt;
|isvalidgametype&lt;br /&gt;
|0x151&lt;br /&gt;
|0xf4&lt;br /&gt;
|-&lt;br /&gt;
|matchend&lt;br /&gt;
|0x152&lt;br /&gt;
|0xf5&lt;br /&gt;
|-&lt;br /&gt;
|setplayerteamrank&lt;br /&gt;
|0x153&lt;br /&gt;
|0xf6&lt;br /&gt;
|-&lt;br /&gt;
|endparty&lt;br /&gt;
|0x154&lt;br /&gt;
|0xf7&lt;br /&gt;
|-&lt;br /&gt;
|setteamradar&lt;br /&gt;
|0x155&lt;br /&gt;
|0xf8&lt;br /&gt;
|-&lt;br /&gt;
|getteamradar&lt;br /&gt;
|0x156&lt;br /&gt;
|0xf9&lt;br /&gt;
|-&lt;br /&gt;
|setteamradarstrength&lt;br /&gt;
|0x157&lt;br /&gt;
|0xfa&lt;br /&gt;
|-&lt;br /&gt;
|getteamradarstrength&lt;br /&gt;
|0x158&lt;br /&gt;
|0xfb&lt;br /&gt;
|-&lt;br /&gt;
|getuavstrengthmin&lt;br /&gt;
|0x159&lt;br /&gt;
|0xfc&lt;br /&gt;
|-&lt;br /&gt;
|getuavstrengthmax&lt;br /&gt;
|0x106&lt;br /&gt;
|0xfd&lt;br /&gt;
|-&lt;br /&gt;
|getuavstrengthlevelneutral&lt;br /&gt;
|0x107&lt;br /&gt;
|0xfe&lt;br /&gt;
|-&lt;br /&gt;
|getuavstrengthlevelshowenemyfastsweep&lt;br /&gt;
|0x108&lt;br /&gt;
|0xff&lt;br /&gt;
|-&lt;br /&gt;
|getuavstrengthlevelshowenemydirectional&lt;br /&gt;
|0x109&lt;br /&gt;
|0x100&lt;br /&gt;
|-&lt;br /&gt;
|blockteamradar&lt;br /&gt;
|0x10a&lt;br /&gt;
|0x101&lt;br /&gt;
|-&lt;br /&gt;
|unblockteamradar&lt;br /&gt;
|0x10b&lt;br /&gt;
|0x102&lt;br /&gt;
|-&lt;br /&gt;
|isteamradarblocked&lt;br /&gt;
|0x10c&lt;br /&gt;
|0x103&lt;br /&gt;
|-&lt;br /&gt;
|getassignedteam&lt;br /&gt;
|0x10d&lt;br /&gt;
|0x104&lt;br /&gt;
|-&lt;br /&gt;
|setmatchdata&lt;br /&gt;
|0x10e&lt;br /&gt;
|0x105&lt;br /&gt;
|-&lt;br /&gt;
|getmatchdata&lt;br /&gt;
|0x10f&lt;br /&gt;
|0x106&lt;br /&gt;
|-&lt;br /&gt;
|sendmatchdata&lt;br /&gt;
|0x110&lt;br /&gt;
|0x107&lt;br /&gt;
|-&lt;br /&gt;
|clearmatchdata&lt;br /&gt;
|0x111&lt;br /&gt;
|0x108&lt;br /&gt;
|-&lt;br /&gt;
|setmatchdatadef&lt;br /&gt;
|0x112&lt;br /&gt;
|0x109&lt;br /&gt;
|-&lt;br /&gt;
|setmatchclientip&lt;br /&gt;
|0x113&lt;br /&gt;
|0x10a&lt;br /&gt;
|-&lt;br /&gt;
|setmatchdataid&lt;br /&gt;
|0x114&lt;br /&gt;
|0x10b&lt;br /&gt;
|-&lt;br /&gt;
|setclientmatchdata&lt;br /&gt;
|0x115&lt;br /&gt;
|0x10c&lt;br /&gt;
|-&lt;br /&gt;
|getclientmatchdata&lt;br /&gt;
|0x116&lt;br /&gt;
|0x10d&lt;br /&gt;
|-&lt;br /&gt;
|setclientmatchdatadef&lt;br /&gt;
|0x117&lt;br /&gt;
|0x10e&lt;br /&gt;
|-&lt;br /&gt;
|sendclientmatchdata&lt;br /&gt;
|0x118&lt;br /&gt;
|0x10f&lt;br /&gt;
|-&lt;br /&gt;
|getbuildversion&lt;br /&gt;
|0x119&lt;br /&gt;
|0x110&lt;br /&gt;
|-&lt;br /&gt;
|getbuildnumber&lt;br /&gt;
|0x11a&lt;br /&gt;
|0x111&lt;br /&gt;
|-&lt;br /&gt;
|getsystemtime&lt;br /&gt;
|0x11b&lt;br /&gt;
|0x112&lt;br /&gt;
|-&lt;br /&gt;
|getmatchrulesdata&lt;br /&gt;
|0x11c&lt;br /&gt;
|0x113&lt;br /&gt;
|-&lt;br /&gt;
|isusingmatchrulesdata&lt;br /&gt;
|0x11d&lt;br /&gt;
|0x114&lt;br /&gt;
|-&lt;br /&gt;
|kick&lt;br /&gt;
|0x11e&lt;br /&gt;
|0x115&lt;br /&gt;
|-&lt;br /&gt;
|issplitscreen&lt;br /&gt;
|0x11f&lt;br /&gt;
|0x116&lt;br /&gt;
|-&lt;br /&gt;
|setmapcenter&lt;br /&gt;
|0x120&lt;br /&gt;
|0x117&lt;br /&gt;
|-&lt;br /&gt;
|setgameendtime&lt;br /&gt;
|0x121&lt;br /&gt;
|0x118&lt;br /&gt;
|-&lt;br /&gt;
|visionsetnaked&lt;br /&gt;
|0x122&lt;br /&gt;
|0x119&lt;br /&gt;
|-&lt;br /&gt;
|visionsetnight&lt;br /&gt;
|0x123&lt;br /&gt;
|0x11a&lt;br /&gt;
|-&lt;br /&gt;
|visionsetmissilecam&lt;br /&gt;
|0x124&lt;br /&gt;
|0x11b&lt;br /&gt;
|-&lt;br /&gt;
|visionsetthermal&lt;br /&gt;
|0xd9&lt;br /&gt;
|0x11c&lt;br /&gt;
|-&lt;br /&gt;
|visionsetpain&lt;br /&gt;
|0xda&lt;br /&gt;
|0x11d&lt;br /&gt;
|-&lt;br /&gt;
|endlobby&lt;br /&gt;
|0xdb&lt;br /&gt;
|0x11e&lt;br /&gt;
|-&lt;br /&gt;
|ambience&lt;br /&gt;
|0xdc&lt;br /&gt;
|0x11f&lt;br /&gt;
|-&lt;br /&gt;
|getmapcustom&lt;br /&gt;
|0xdd&lt;br /&gt;
|0x120&lt;br /&gt;
|-&lt;br /&gt;
|updateskill&lt;br /&gt;
|0xde&lt;br /&gt;
|0x121&lt;br /&gt;
|-&lt;br /&gt;
|spawnsighttrace&lt;br /&gt;
|0xdf&lt;br /&gt;
|0x122&lt;br /&gt;
|-&lt;br /&gt;
|incrementcounter&lt;br /&gt;
|N/A&lt;br /&gt;
|0x123&lt;br /&gt;
|-&lt;br /&gt;
|getcountertotal&lt;br /&gt;
|N/A&lt;br /&gt;
|0x124&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Field IDs ==&lt;br /&gt;
In Ghosts and AW, fields have been sorted alphabetically and were then enumerated. This way, fields starting with the letter a such as &amp;quot;alignx&amp;quot; have got the lowest field ids.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Client Fields&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!rowspan=&amp;quot;2&amp;quot;|Field&lt;br /&gt;
!colspan=&amp;quot;1&amp;quot;|MW3&lt;br /&gt;
!colspan=&amp;quot;1&amp;quot;|AW&lt;br /&gt;
|-&lt;br /&gt;
!PS3 ID&lt;br /&gt;
!PS3 ID&lt;br /&gt;
|-&lt;br /&gt;
| name&lt;br /&gt;
| 0x2D1&lt;br /&gt;
| 0x2AF&lt;br /&gt;
|-&lt;br /&gt;
| sessionteam  &lt;br /&gt;
| 0x2D2&lt;br /&gt;
| 0x3C1&lt;br /&gt;
|-&lt;br /&gt;
| sessionstate&lt;br /&gt;
| 0x2D3&lt;br /&gt;
| 0x3C0&lt;br /&gt;
|-&lt;br /&gt;
| maxhealth&lt;br /&gt;
| 0x2D4&lt;br /&gt;
| 0x279&lt;br /&gt;
|-&lt;br /&gt;
| score&lt;br /&gt;
| 0x2D5&lt;br /&gt;
| 0x394&lt;br /&gt;
|-&lt;br /&gt;
| deaths&lt;br /&gt;
| 0x2D6&lt;br /&gt;
| 0x112&lt;br /&gt;
|-&lt;br /&gt;
| extrascore0&lt;br /&gt;
|&lt;br /&gt;
| 0x16D&lt;br /&gt;
|-&lt;br /&gt;
| extrascore1&lt;br /&gt;
|&lt;br /&gt;
| 0x16E&lt;br /&gt;
|-&lt;br /&gt;
| killstreakcount&lt;br /&gt;
|&lt;br /&gt;
| 0x242&lt;br /&gt;
|-&lt;br /&gt;
| objective&lt;br /&gt;
|&lt;br /&gt;
| 0x2DA&lt;br /&gt;
|-&lt;br /&gt;
| statusicon&lt;br /&gt;
| 0x2D7&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| headicon&lt;br /&gt;
| 0x2D8&lt;br /&gt;
| 0x1E8&lt;br /&gt;
|-&lt;br /&gt;
| headiconteam&lt;br /&gt;
| 0x2D9&lt;br /&gt;
| 0x1E9&lt;br /&gt;
|-&lt;br /&gt;
| kills&lt;br /&gt;
| 0x2DB&lt;br /&gt;
| 0x240&lt;br /&gt;
|-&lt;br /&gt;
| assists&lt;br /&gt;
| 0x2DC&lt;br /&gt;
| 0x53&lt;br /&gt;
|-&lt;br /&gt;
| hasradar&lt;br /&gt;
| 0x2DD&lt;br /&gt;
| 0x1E4&lt;br /&gt;
|-&lt;br /&gt;
| isradarblocked &lt;br /&gt;
| 0x2DE&lt;br /&gt;
| 0x217&lt;br /&gt;
|-&lt;br /&gt;
| radarstrength&lt;br /&gt;
| 0x2DF&lt;br /&gt;
| 0x357&lt;br /&gt;
|-&lt;br /&gt;
| radarshowenemydirection&lt;br /&gt;
| 0x2E0&lt;br /&gt;
| 0x356&lt;br /&gt;
|-&lt;br /&gt;
| radarmode&lt;br /&gt;
| 0x2E1&lt;br /&gt;
| 0x355&lt;br /&gt;
|-&lt;br /&gt;
| enemyradarmode&lt;br /&gt;
|&lt;br /&gt;
| 0x14D&lt;br /&gt;
|-&lt;br /&gt;
| forcespectatorclient&lt;br /&gt;
| 0x2E2&lt;br /&gt;
| 0x19C&lt;br /&gt;
|-&lt;br /&gt;
| killcamentity&lt;br /&gt;
| 0x2E3&lt;br /&gt;
| 0x23E&lt;br /&gt;
|-&lt;br /&gt;
| killcamentitylookat&lt;br /&gt;
| 0x2E4&lt;br /&gt;
| 0x23F&lt;br /&gt;
|-&lt;br /&gt;
| spectatekillcam&lt;br /&gt;
|&lt;br /&gt;
| 0x3E3&lt;br /&gt;
|-&lt;br /&gt;
| archivetime&lt;br /&gt;
| 0x2E5&lt;br /&gt;
| 0x4D&lt;br /&gt;
|-&lt;br /&gt;
| psoffsettime &lt;br /&gt;
| 0x2E6&lt;br /&gt;
| 0x352&lt;br /&gt;
|-&lt;br /&gt;
| pers&lt;br /&gt;
| 0x2E7&lt;br /&gt;
| 0x311&lt;br /&gt;
|-&lt;br /&gt;
| game_extrainfo&lt;br /&gt;
|&lt;br /&gt;
| 0x1B5&lt;br /&gt;
|-&lt;br /&gt;
| playercardpatch&lt;br /&gt;
|&lt;br /&gt;
| 0x325&lt;br /&gt;
|-&lt;br /&gt;
| playercardbackground&lt;br /&gt;
|&lt;br /&gt;
| 0x324&lt;br /&gt;
|}&lt;br /&gt;
&#039;&#039;&#039;Entity Fields&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot;|Field&lt;br /&gt;
! colspan=&amp;quot;1&amp;quot;|MW3&lt;br /&gt;
! colspan=&amp;quot;1&amp;quot;|AW&lt;br /&gt;
|-&lt;br /&gt;
! PS3 ID&lt;br /&gt;
! PS3 ID&lt;br /&gt;
|-&lt;br /&gt;
| code_classname&lt;br /&gt;
| 0x2C3&lt;br /&gt;
| 0xB1&lt;br /&gt;
|-&lt;br /&gt;
| classname&lt;br /&gt;
| 0x2C4&lt;br /&gt;
| 0xAF&lt;br /&gt;
|-&lt;br /&gt;
| origin&lt;br /&gt;
| 0x2C5&lt;br /&gt;
| 0x2EA&lt;br /&gt;
|-&lt;br /&gt;
| model&lt;br /&gt;
| 0x2C6&lt;br /&gt;
| 0x2A4&lt;br /&gt;
|-&lt;br /&gt;
| spawnflags&lt;br /&gt;
| 0x2C7&lt;br /&gt;
| 0x3DF&lt;br /&gt;
|-&lt;br /&gt;
| target&lt;br /&gt;
| 0x2C8&lt;br /&gt;
| 0x4A9&lt;br /&gt;
|-&lt;br /&gt;
| targetname&lt;br /&gt;
| 0x2C9&lt;br /&gt;
| 0x4AB&lt;br /&gt;
|-&lt;br /&gt;
| count&lt;br /&gt;
| 0x2CA&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| health&lt;br /&gt;
| 0x2CB&lt;br /&gt;
| 0x1EB&lt;br /&gt;
|-&lt;br /&gt;
| dmg&lt;br /&gt;
| 0x2CC&lt;br /&gt;
| 0x12A&lt;br /&gt;
|-&lt;br /&gt;
| angles&lt;br /&gt;
| 0x2CD&lt;br /&gt;
| 0x45&lt;br /&gt;
|-&lt;br /&gt;
| birthtime&lt;br /&gt;
| 0x2CE&lt;br /&gt;
| 0x81&lt;br /&gt;
|-&lt;br /&gt;
| script_linkname&lt;br /&gt;
| 0x2CF&lt;br /&gt;
| 0x39D&lt;br /&gt;
|-&lt;br /&gt;
| slidevelocity&lt;br /&gt;
| 0x2D0&lt;br /&gt;
| 0x3D0&lt;br /&gt;
|-&lt;br /&gt;
| owner&lt;br /&gt;
| &lt;br /&gt;
| 0x2ED&lt;br /&gt;
|}&lt;br /&gt;
&#039;&#039;&#039;Vehicle Script Fields&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot;|Field&lt;br /&gt;
! colspan=&amp;quot;1&amp;quot;|MW3&lt;br /&gt;
! colspan=&amp;quot;1&amp;quot;|Ghosts&lt;br /&gt;
! colspan=&amp;quot;1&amp;quot;|AW&lt;br /&gt;
|-&lt;br /&gt;
! PS3 ID&lt;br /&gt;
! PC ID&lt;br /&gt;
! PS3 ID&lt;br /&gt;
|-&lt;br /&gt;
| veh_speed || 0x2FF || 0x2B9 || 0x4FC&lt;br /&gt;
|-&lt;br /&gt;
| veh_pathspeed || 0x300 || 0x2B6 || 0x4F9 &lt;br /&gt;
|-&lt;br /&gt;
| veh_transmission || 0x301 || 0x2BC || 0x4FF &lt;br /&gt;
|-&lt;br /&gt;
| veh_pathdir || 0x302 || 0x2B5 || 0x4F8 &lt;br /&gt;
|-&lt;br /&gt;
| veh_pathtype || 0x303 || 0x2B7 || 0x4FA &lt;br /&gt;
|-&lt;br /&gt;
| veh_topspeed || 0x304 || 0x2BB || 0x4FE &lt;br /&gt;
|-&lt;br /&gt;
| veh_brake || 0x305 || 0x2B0 || 0x4F2 &lt;br /&gt;
|-&lt;br /&gt;
| veh_throttle || 0x306 || 0x2BA || 0x4FD &lt;br /&gt;
|}&lt;br /&gt;
&#039;&#039;&#039;Hudelem Fields&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot;|Field&lt;br /&gt;
! colspan=&amp;quot;1&amp;quot;|MW3&lt;br /&gt;
! colspan=&amp;quot;1&amp;quot;|AW&lt;br /&gt;
|-&lt;br /&gt;
! PS3 ID&lt;br /&gt;
! PS3 ID&lt;br /&gt;
|-&lt;br /&gt;
| x&lt;br /&gt;
| 0x2E8&lt;br /&gt;
| 0x534&lt;br /&gt;
|-&lt;br /&gt;
| y&lt;br /&gt;
| 0x2E9&lt;br /&gt;
| 0x53C&lt;br /&gt;
|-&lt;br /&gt;
| z&lt;br /&gt;
| 0x2EA&lt;br /&gt;
| 0x53F&lt;br /&gt;
|-&lt;br /&gt;
| fontscale&lt;br /&gt;
| 0x2EB&lt;br /&gt;
| 0x190&lt;br /&gt;
|-&lt;br /&gt;
| font&lt;br /&gt;
| 0x2EC&lt;br /&gt;
| 0x18F&lt;br /&gt;
|-&lt;br /&gt;
| alignx&lt;br /&gt;
| 0x2ED&lt;br /&gt;
| 0x30&lt;br /&gt;
|-&lt;br /&gt;
| aligny&lt;br /&gt;
| 0x2EE&lt;br /&gt;
| 0x31&lt;br /&gt;
|-&lt;br /&gt;
| horzalign&lt;br /&gt;
| 0x2EF&lt;br /&gt;
| 0x1F8&lt;br /&gt;
|-&lt;br /&gt;
| vertalign&lt;br /&gt;
| 0x2F0&lt;br /&gt;
| 0x504&lt;br /&gt;
|-&lt;br /&gt;
| color&lt;br /&gt;
| 0x2F1&lt;br /&gt;
| 0xC9&lt;br /&gt;
|-&lt;br /&gt;
| alpha &lt;br /&gt;
| 0x2F2&lt;br /&gt;
| 0x3B&lt;br /&gt;
|-&lt;br /&gt;
| label &lt;br /&gt;
| 0x2F3&lt;br /&gt;
| 0x249&lt;br /&gt;
|-&lt;br /&gt;
| sort &lt;br /&gt;
| 0x2F4&lt;br /&gt;
| 0x3D9&lt;br /&gt;
|-&lt;br /&gt;
| foreground &lt;br /&gt;
| 0x2F5&lt;br /&gt;
| 0x19E&lt;br /&gt;
|-&lt;br /&gt;
| lowresbackground &lt;br /&gt;
| 0x2F6&lt;br /&gt;
| 0x26B&lt;br /&gt;
|-&lt;br /&gt;
| hidewhendead &lt;br /&gt;
| 0x2F7&lt;br /&gt;
| 0x1F0&lt;br /&gt;
|-&lt;br /&gt;
| hidewheninmenu &lt;br /&gt;
| 0x2F8&lt;br /&gt;
| 0x1F2&lt;br /&gt;
|-&lt;br /&gt;
| glowcolor &lt;br /&gt;
| 0x2FA&lt;br /&gt;
| 0x1C4&lt;br /&gt;
|-&lt;br /&gt;
| glowalpha &lt;br /&gt;
| 0x2FB&lt;br /&gt;
| 0x8C&lt;br /&gt;
|-&lt;br /&gt;
| archived &lt;br /&gt;
| 0x2FC&lt;br /&gt;
| 0x4C&lt;br /&gt;
|-&lt;br /&gt;
| showinkillcam&lt;br /&gt;
|&lt;br /&gt;
| 0x3C8&lt;br /&gt;
|-&lt;br /&gt;
| hidein3rdperson &lt;br /&gt;
| 0x2FD&lt;br /&gt;
| 0x1EF&lt;br /&gt;
|-&lt;br /&gt;
| positioninworld&lt;br /&gt;
|&lt;br /&gt;
| 0x333&lt;br /&gt;
|-&lt;br /&gt;
| hidewhenindemo &lt;br /&gt;
| 0x2FE&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| enablehudlighting&lt;br /&gt;
|&lt;br /&gt;
| 0x140&lt;br /&gt;
|}&lt;br /&gt;
&#039;&#039;&#039;Vehicle Node Fields&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!rowspan=&amp;quot;2&amp;quot;|Field&lt;br /&gt;
!colspan=&amp;quot;1&amp;quot;|MW3&lt;br /&gt;
!colspan=&amp;quot;1&amp;quot;|AW&lt;br /&gt;
|-&lt;br /&gt;
!PS3 ID&lt;br /&gt;
!PS3 ID&lt;br /&gt;
|-&lt;br /&gt;
| targetname&lt;br /&gt;
| 0x2C9&lt;br /&gt;
| 0x4AB&lt;br /&gt;
|-&lt;br /&gt;
| target&lt;br /&gt;
| 0x2C8&lt;br /&gt;
| 0x4A9&lt;br /&gt;
|-&lt;br /&gt;
| script_linkname&lt;br /&gt;
| 0x2CF&lt;br /&gt;
| 0x39D&lt;br /&gt;
|-&lt;br /&gt;
| script_noteworthy&lt;br /&gt;
| 0x307&lt;br /&gt;
| 0x39F&lt;br /&gt;
|-&lt;br /&gt;
| origin&lt;br /&gt;
| 0x2C5&lt;br /&gt;
| 0x2EA&lt;br /&gt;
|-&lt;br /&gt;
| angles&lt;br /&gt;
| 0x2CD&lt;br /&gt;
| 0x45&lt;br /&gt;
|-&lt;br /&gt;
| speed&lt;br /&gt;
| 0x308&lt;br /&gt;
| 0x3E7&lt;br /&gt;
|-&lt;br /&gt;
| lookahead&lt;br /&gt;
|  0x309&lt;br /&gt;
| 0x25F&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Therifboy</name></author>
	</entry>
	<entry>
		<id>https://codresearch.dev/index.php?title=TLS_(BO2)&amp;diff=621</id>
		<title>TLS (BO2)</title>
		<link rel="alternate" type="text/html" href="https://codresearch.dev/index.php?title=TLS_(BO2)&amp;diff=621"/>
		<updated>2014-11-26T22:26:19Z</updated>

		<summary type="html">&lt;p&gt;Therifboy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Game Structures]]&lt;br /&gt;
[[Category:BO2]]&lt;br /&gt;
TLS Stands for Thread Local Storage. It is a section of data that is unique to each thread and is being pointed to by the register r13 in the powerpc architecture. Some functions make use of that tls to access some buffers like va Com_Error, etc... Not setting up the tls like the game would do it will most likely cause a crash when calling functions that make use of that storage.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
struct TraceThreadInfo_t // not sure if the name is correct&lt;br /&gt;
{&lt;br /&gt;
	short unk0;&lt;br /&gt;
	short (*partitions)[0x1ED0];&lt;br /&gt;
	short (*partitions2)[0x1ED0];&lt;br /&gt;
	char (*ptr0)[0x60];&lt;br /&gt;
	char (*ptr1)[0x4C];&lt;br /&gt;
	char (*ptr2)[0x4];&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct va_info_t&lt;br /&gt;
{&lt;br /&gt;
	char va_string[4][0x400];&lt;br /&gt;
	int index;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct CmdArgs&lt;br /&gt;
{&lt;br /&gt;
	int nesting; //0x0&lt;br /&gt;
		char unk0[0x60]; //0x4&lt;br /&gt;
	int localClientNum[8]; //0x64&lt;br /&gt;
	int argc[8]; //0x84&lt;br /&gt;
	const char **argv[8]; //0xA4&lt;br /&gt;
	char textPool[0x2000]; //0xC4&lt;br /&gt;
	const char* argvPool[0x200]; //0x20C4&lt;br /&gt;
	int usedTextPool[8]; //0x28C4&lt;br /&gt;
	int totalUsedArgvPool; //0x28E4&lt;br /&gt;
	int totalUsedTextPool;//0x28E8&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct tls_t&lt;br /&gt;
{&lt;br /&gt;
	int zero;&lt;br /&gt;
	va_info_t* va;&lt;br /&gt;
	jmp_buf* env; // located in the header &amp;lt;setjmp.h&amp;gt;&lt;br /&gt;
	TraceThreadInfo_t* data;&lt;br /&gt;
	CmdArgs* integers;&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To access that storage, Sys_GetValue and Sys_SetValue are used.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
void* Sys_GetValue(int index);&lt;br /&gt;
void Sys_SetValue(int index, void* value);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
An example of how that buffer is accessed:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
char* va(const char* fmt, ...)&lt;br /&gt;
{&lt;br /&gt;
	va_list args;&lt;br /&gt;
	va_start(args, fmt);&lt;br /&gt;
	va_info_t* info = (va_info_t*)Sys_GetValue(1);&lt;br /&gt;
	int index = info-&amp;gt;index++;&lt;br /&gt;
	char* buffer = info-&amp;gt;va_string[index];&lt;br /&gt;
	int ret = vsnprintf(buffer, 0x400, fmt, args);&lt;br /&gt;
	va_end(args);&lt;br /&gt;
	if (ret &amp;lt; 0 || ret &amp;gt;= 0x400)&lt;br /&gt;
	{&lt;br /&gt;
		buffer[0x3FF] = &#039;\0&#039;;&lt;br /&gt;
		Com_Error(ERR_DROP, &amp;quot;\x15Attempted to overrun string in call to va(): &#039;%s&#039;&amp;quot;, buffer);&lt;br /&gt;
	}&lt;br /&gt;
	return buffer;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>Therifboy</name></author>
	</entry>
	<entry>
		<id>https://codresearch.dev/index.php?title=TLS_(BO2)&amp;diff=619</id>
		<title>TLS (BO2)</title>
		<link rel="alternate" type="text/html" href="https://codresearch.dev/index.php?title=TLS_(BO2)&amp;diff=619"/>
		<updated>2014-11-25T11:28:09Z</updated>

		<summary type="html">&lt;p&gt;Therifboy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Game Structures]]&lt;br /&gt;
[[Category:BO2]]&lt;br /&gt;
TLS Stands for Thread Local Storage. It is a section of data that is unique to each thread and is being pointed to by the register r13 in the powerpc architecture. Some functions make use of that tls to access some buffers like va. Not setting up the tls like the game would do it will most likely cause a crash when calling functions that make use of that storage.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
struct tls_data_t&lt;br /&gt;
{&lt;br /&gt;
	int zero;&lt;br /&gt;
	short* partitions; // used for traceWork_t::threadInfo.checkcount.partitions&lt;br /&gt;
	short* partitions2; // used for traceWork_t::threadInfo.checkcount.partitions&lt;br /&gt;
	char *ptr0;&lt;br /&gt;
	char *ptr1;&lt;br /&gt;
	char *ptr2;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct va_info_t&lt;br /&gt;
{&lt;br /&gt;
	char va_string[4][0x400];&lt;br /&gt;
	int index;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct CmdArgs&lt;br /&gt;
{&lt;br /&gt;
	int nesting; //0x0&lt;br /&gt;
		char unk0[0x60]; //0x4&lt;br /&gt;
	int localClientNum[8]; //0x64&lt;br /&gt;
	int argc[8]; //0x84&lt;br /&gt;
	const char **argv[8]; //0xA4&lt;br /&gt;
	char textPool[0x2000]; //0xC4&lt;br /&gt;
	const char* argvPool[0x200]; //0x20C4&lt;br /&gt;
	int usedTextPool[8]; //0x28C4&lt;br /&gt;
	int totalUsedArgvPool; //0x28E4&lt;br /&gt;
	int totalUsedTextPool;//0x28E8&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct tls_t&lt;br /&gt;
{&lt;br /&gt;
	int zero;&lt;br /&gt;
	va_info_t* va;&lt;br /&gt;
	jmp_buf* env; // located in the header &amp;lt;setjmp.h&amp;gt;&lt;br /&gt;
	tls_data_t* data;&lt;br /&gt;
	CmdArgs* integers;&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To access that storage, Sys_GetValue and Sys_SetValue are used.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
void* Sys_GetValue(int index);&lt;br /&gt;
void Sys_SetValue(int index, void* value);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
An example of how that buffer is accessed:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
char* va(const char* fmt, ...)&lt;br /&gt;
{&lt;br /&gt;
	va_list args;&lt;br /&gt;
	va_start(args, fmt);&lt;br /&gt;
	va_info_t* info = (va_info_t*)Sys_GetValue(1);&lt;br /&gt;
	int index = info-&amp;gt;index++;&lt;br /&gt;
	char* buffer = info-&amp;gt;va_string[index];&lt;br /&gt;
	int ret = vsnprintf(buffer, 0x400, fmt, args);&lt;br /&gt;
	if (ret &amp;lt; 0 || ret &amp;gt;= 0x400)&lt;br /&gt;
	{&lt;br /&gt;
		buffer[0x3FF] = &#039;\0&#039;;&lt;br /&gt;
		Com_Error(ERR_DROP, &amp;quot;\x15Attempted to overrun string in call to va(): &#039;%s&#039;&amp;quot;, buffer);&lt;br /&gt;
	}&lt;br /&gt;
	va_end(args);&lt;br /&gt;
	return buffer;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>Therifboy</name></author>
	</entry>
	<entry>
		<id>https://codresearch.dev/index.php?title=TLS_(BO2)&amp;diff=618</id>
		<title>TLS (BO2)</title>
		<link rel="alternate" type="text/html" href="https://codresearch.dev/index.php?title=TLS_(BO2)&amp;diff=618"/>
		<updated>2014-11-25T10:23:12Z</updated>

		<summary type="html">&lt;p&gt;Therifboy: Created page with &amp;quot;Category:Game Structures Category:BO2 TLS Stands for Thread Local Storage. It is a section of data that is unique to each thread and is being pointed to by the registe...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Game Structures]]&lt;br /&gt;
[[Category:BO2]]&lt;br /&gt;
TLS Stands for Thread Local Storage. It is a section of data that is unique to each thread and is being pointed to by the register r13 in the powerpc architecture. Some functions make use of that tls to access some buffers like va. Not setting up the tls like the game would do it will most likely cause a crash when calling functions that make use of that storage.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
struct tls_data_t&lt;br /&gt;
{&lt;br /&gt;
	int zero;&lt;br /&gt;
	short* partitions; // used for traceWork_t::threadInfo.checkcount.partitions&lt;br /&gt;
	short* partitions2; // used for traceWork_t::threadInfo.checkcount.partitions&lt;br /&gt;
	char *ptr0;&lt;br /&gt;
	char *ptr1;&lt;br /&gt;
	char *ptr2;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct va_info_t&lt;br /&gt;
{&lt;br /&gt;
	char va_string[4][0x400];&lt;br /&gt;
	int index;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct CmdArgs&lt;br /&gt;
{&lt;br /&gt;
	int nesting; //0x0&lt;br /&gt;
		char unk0[0x60]; //0x4&lt;br /&gt;
	int localClientNum[8]; //0x64&lt;br /&gt;
	int argc[8]; //0x84&lt;br /&gt;
	const char **argv[8]; //0xA4&lt;br /&gt;
	char textPool[0x2000]; //0xC4&lt;br /&gt;
	const char* argvPool[0x200]; //0x20C4&lt;br /&gt;
	int usedTextPool[8]; //0x28C4&lt;br /&gt;
	int totalUsedArgvPool; //0x28E4&lt;br /&gt;
	int totalUsedTextPool;//0x28E8&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct tls_t&lt;br /&gt;
{&lt;br /&gt;
	int zero;&lt;br /&gt;
	va_info_t* va;&lt;br /&gt;
	jmp_buf* env; // located in the header &amp;lt;setjmp.h&amp;gt;&lt;br /&gt;
	tls_data_t* data;&lt;br /&gt;
	CmdArgs* integers;&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To access that storage, Sys_GetValue and Sys_SetValue are used.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
void* Sys_GetValue(int index);&lt;br /&gt;
void Sys_SetValue(int index, void* value);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
An example of how that buffer is accessed:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
char* va(const char* fmt, ...)&lt;br /&gt;
{&lt;br /&gt;
	va_list args;&lt;br /&gt;
	va_start(args, fmt);&lt;br /&gt;
	va_info_t* info = (va_info_t*)Sys_GetValue(1);&lt;br /&gt;
	int index = info-&amp;gt;index++;&lt;br /&gt;
	char* buffer = info-&amp;gt;va_string[index];&lt;br /&gt;
	int ret = vsnprintf(buffer, 0x400, fmt, args);&lt;br /&gt;
	if (ret &amp;lt; 0 || ret &amp;gt;= 0x400)&lt;br /&gt;
	{&lt;br /&gt;
		buffer[0x3FF] = &#039;\0&#039;;&lt;br /&gt;
		Com_Error(ERR_DROP, &amp;quot;\x15Attempted to overrun string in call to va(): &#039;%s&#039;&amp;quot;, buffer);&lt;br /&gt;
	}&lt;br /&gt;
	return buffer;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>Therifboy</name></author>
	</entry>
	<entry>
		<id>https://codresearch.dev/index.php?title=Game_Client_(BO2)&amp;diff=613</id>
		<title>Game Client (BO2)</title>
		<link rel="alternate" type="text/html" href="https://codresearch.dev/index.php?title=Game_Client_(BO2)&amp;diff=613"/>
		<updated>2014-11-20T15:18:45Z</updated>

		<summary type="html">&lt;p&gt;Therifboy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Game Structures]]&lt;br /&gt;
[[Category:BO2]]&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
/* gclient_s-&amp;gt;buttons.buttons */&lt;br /&gt;
#define __jump			0x00200000&lt;br /&gt;
#define __stance		0x00000200&lt;br /&gt;
#define __use			0x04000000&lt;br /&gt;
#define __triangle		0x00000008&lt;br /&gt;
#define __attack		0x80000000&lt;br /&gt;
#define __ads			0x00100000&lt;br /&gt;
#define __prone			0x00800000&lt;br /&gt;
#define __crouch		0x00400000&lt;br /&gt;
#define __frag			0x00020000&lt;br /&gt;
#define __tactical		0x00010000&lt;br /&gt;
#define __melee			0x20000000&lt;br /&gt;
#define __sprint		0x40000000&lt;br /&gt;
&lt;br /&gt;
/* gclient_s-&amp;gt;actionSlots.buttons2 */&lt;br /&gt;
#define __dpadup		0x00040000&lt;br /&gt;
#define __dpaddown		0x00020000&lt;br /&gt;
#define __dpadleft		0x00010000&lt;br /&gt;
#define __dpadright		0x00008000&lt;br /&gt;
&lt;br /&gt;
enum team_t&lt;br /&gt;
{&lt;br /&gt;
	TEAM_FREE = 0x0,&lt;br /&gt;
	TEAM_ALLIES = 0x1,&lt;br /&gt;
	TEAM_AXIS = 0x2,&lt;br /&gt;
	TEAM_THREE = 0x3,&lt;br /&gt;
	TEAM_FOUR = 0x4,&lt;br /&gt;
	TEAM_FIVE = 0x5,&lt;br /&gt;
	TEAM_SIX = 0x6,&lt;br /&gt;
	TEAM_SEVEN = 0x7,&lt;br /&gt;
	TEAM_EIGHT = 0x8,&lt;br /&gt;
	TEAM_MAX = 0x9&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
enum sessionState_t&lt;br /&gt;
{&lt;br /&gt;
	SESS_STATE_PLAYING = 0x0,&lt;br /&gt;
	SESS_STATE_DEAD = 0x1,&lt;br /&gt;
	SESS_STATE_SPECTATOR = 0x2,&lt;br /&gt;
	SESS_STATE_INTERMISSION = 0x3,&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
enum clientConnected_t&lt;br /&gt;
{&lt;br /&gt;
	CON_DISCONNECTED = 0x0,&lt;br /&gt;
	CON_CONNECTING = 0x1,&lt;br /&gt;
	CON_CONNECTED = 0x2,&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct VehicleState&lt;br /&gt;
{&lt;br /&gt;
	float origin[3];//0&lt;br /&gt;
	float angles[3];//0xC&lt;br /&gt;
	float velocity[3];//0x18&lt;br /&gt;
	float angVelocity[3];//0x24&lt;br /&gt;
	float tilt[2];//0x30&lt;br /&gt;
	float tiltVelocity[2];//0x38&lt;br /&gt;
	float targetHeightDelta;//0x40&lt;br /&gt;
	float lastGroundHeight;//0x44&lt;br /&gt;
	int entity;//0x48&lt;br /&gt;
	int flags;//0x4C&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct SprintState&lt;br /&gt;
{&lt;br /&gt;
	int sprintButtonUpRequired;//0x0&lt;br /&gt;
	int sprintDelay;//0x4&lt;br /&gt;
	int lastSprintStart;//0x8&lt;br /&gt;
	int lastSprintEnd;//0xC&lt;br /&gt;
	int sprintStartMaxLength;//0x10&lt;br /&gt;
	int sprintDuration;//0x14&lt;br /&gt;
	int sprintCooldown;//0x18&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct MantleState&lt;br /&gt;
{&lt;br /&gt;
	float yaw; //0x0&lt;br /&gt;
	int timer; //0x4&lt;br /&gt;
	int transIndex; //0x8&lt;br /&gt;
	int flags; //0xC&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct playerState_s&lt;br /&gt;
{&lt;br /&gt;
	int commandTime;//0x0&lt;br /&gt;
	int pm_type;//0x4&lt;br /&gt;
	int bobCycle; //0x8&lt;br /&gt;
	int pm_flags; //0xC&lt;br /&gt;
	long long weapFlags;//0x10&lt;br /&gt;
	int otherFlags;//0x18&lt;br /&gt;
	int pm_time;//0x1C&lt;br /&gt;
	short ownerNum;//0x20&lt;br /&gt;
	short name;//0x22&lt;br /&gt;
	char progress;//0x24&lt;br /&gt;
	vec3_t origin;//0x28&lt;br /&gt;
	vec3_t velocity;//0x34&lt;br /&gt;
	int playerCamEnt; //0x40&lt;br /&gt;
	int playerCamTag; //0x44&lt;br /&gt;
		char unk1[4]; //0x48&lt;br /&gt;
	int weaponTime;//0x4C&lt;br /&gt;
	int weaponDelay;//0x50&lt;br /&gt;
	int weaponTimeLeft;//0x54&lt;br /&gt;
		char unk2[4];//0x58&lt;br /&gt;
	int weaponIdleTime;//0x5C&lt;br /&gt;
	int grenadeTimeLeft;//0x60&lt;br /&gt;
	int throwBackGrenadeOwner;//0x64&lt;br /&gt;
	int throwBackGrenadeTimeLeft;//0x68&lt;br /&gt;
	int weaponRestrictKickTime;//0x6C&lt;br /&gt;
		char unk3[0x14];//0x60&lt;br /&gt;
	bool bThirdPerson;//0x84&lt;br /&gt;
	int foliageSoundTime;//0x88&lt;br /&gt;
	int gravity;//0x8C&lt;br /&gt;
	float leanf;//0x90&lt;br /&gt;
	int speed;//0x94&lt;br /&gt;
	float delta_angles[3];//0x98&lt;br /&gt;
	int groundEntityNum;//0xA4&lt;br /&gt;
	int moverEntityNum;//0xA8&lt;br /&gt;
	int moverTimestamp;//0xAC&lt;br /&gt;
		char unk4[4];//0xB0&lt;br /&gt;
	float vLadderVec[3];//0xB4&lt;br /&gt;
	int jumpTime;//0xC0&lt;br /&gt;
	float jumpOriginZ;//0xC4&lt;br /&gt;
	int slideTime;//0xC8&lt;br /&gt;
	int moveType;//0xCC&lt;br /&gt;
	int legsTimer;//0xD0&lt;br /&gt;
	int torsoTimer;//0xD4&lt;br /&gt;
	int legsAnim;//0xD8&lt;br /&gt;
	int torsoAnim;//0xDC&lt;br /&gt;
		char unk5[4];//0xE0&lt;br /&gt;
	int damageTimer;//0xE4&lt;br /&gt;
	int damageDuration;//0xE8&lt;br /&gt;
	int dmgDirection;//0xEC&lt;br /&gt;
	int dmgType;//0xF0&lt;br /&gt;
	int corpseIndex;//0xF4&lt;br /&gt;
	int movementDir;//0xF8&lt;br /&gt;
	int eFlags;//0xFC&lt;br /&gt;
	int eFlags2;//0x100&lt;br /&gt;
	VehicleState vehicleState;//0x104&lt;br /&gt;
		char unk6[4];//0x154&lt;br /&gt;
	short predictableEventSequence;//0x158&lt;br /&gt;
	short predictableEventSequenceOld;//0x15A&lt;br /&gt;
	int predictableEvents[4];//0x15C&lt;br /&gt;
	int predictableEventParms[4];//0x16C&lt;br /&gt;
	short unpredictableEventSequence; //0x17C&lt;br /&gt;
	short oldUnpredictableEventSequence;//0x17E&lt;br /&gt;
	int unpredictableEvents[4];//0x180&lt;br /&gt;
	int unpredictableEventParms[4];//0x190&lt;br /&gt;
	int clientNum;//0x1A0&lt;br /&gt;
	int offHandWeapon;//0x1A4&lt;br /&gt;
	int offhandSecondary;//0x1A8&lt;br /&gt;
	int offhandPrimary;//0x1AC&lt;br /&gt;
	int renderOptions;//0x1B0&lt;br /&gt;
	int momentum;//0x1B4&lt;br /&gt;
	int weapon;//0x1B8&lt;br /&gt;
	unsigned int lastStandPrevWeapon;//0x1BC&lt;br /&gt;
	int lastWeaponAltModeSwitch;//0x1C0&lt;br /&gt;
	unsigned int stowedWeapon;//0x1C4&lt;br /&gt;
		char unk7[4];//0x1C8&lt;br /&gt;
	unsigned int meleeWeapon;//0x1CC&lt;br /&gt;
	int weaponstate;//0x1D0&lt;br /&gt;
	int weaponstateLeft;//0x1D4&lt;br /&gt;
	unsigned int weaponShotCount;//0x1D8&lt;br /&gt;
	int weaponShotCountLeft;//0x1DC&lt;br /&gt;
	float fWeaponPosFrac;//0x1E0&lt;br /&gt;
	int adsDelayTime;//0x1E4&lt;br /&gt;
	int spreadOverride;//0x1E8&lt;br /&gt;
	int spreadOverrideState;//0x1EC&lt;br /&gt;
	int weaponSpinLerp;//0x1F0&lt;br /&gt;
	int viewmodelIndex;//0x1F4&lt;br /&gt;
	float viewangles[3];//0x1F8&lt;br /&gt;
	int viewHeightTarget;//0x204&lt;br /&gt;
	float viewHeightCurrent;//0x208&lt;br /&gt;
	int viewHeightLerpTime;//0x20C&lt;br /&gt;
	int viewHeightLerpTarget;//0x210&lt;br /&gt;
	int viewHeightLerpDown;//0x214&lt;br /&gt;
	float viewAngleClampBase[2];//0x218&lt;br /&gt;
	float viewAngleClampRange[2];//0x220&lt;br /&gt;
	int damageEvent;//0x228&lt;br /&gt;
	int damageYaw;//0x22C&lt;br /&gt;
	int damagePitch;//0x230&lt;br /&gt;
	int damageCount;//0x234&lt;br /&gt;
	int health;//0x238&lt;br /&gt;
		char unk8[0xC];//0x23C&lt;br /&gt;
	struct&lt;br /&gt;
	{&lt;br /&gt;
		int weapon;//0x0&lt;br /&gt;
		int renderOptions;//0x4&lt;br /&gt;
		float shootSoundFade;//0x8&lt;br /&gt;
		char unk0[0xD];//0xC&lt;br /&gt;
		char model;//0x19&lt;br /&gt;
		char unk1[0x2]; //0x1A&lt;br /&gt;
	} heldWeapon[0xF];//0x248&lt;br /&gt;
	int ammo[0xF];//0x3EC&lt;br /&gt;
	int ammoClip[0xF];//0x428&lt;br /&gt;
	float proneDirection;//0x464&lt;br /&gt;
	float proneDirectionPitch;//0x468&lt;br /&gt;
	float proneTorsoPitch;//0x46C&lt;br /&gt;
	int viewlocked;//0x470&lt;br /&gt;
	short viewlocked_entNum;//0x474&lt;br /&gt;
	int vehiclePos;//0x478&lt;br /&gt;
	int vehicleType;//0x47C&lt;br /&gt;
	int vehicleAnimBoneIndex;//0x480&lt;br /&gt;
	int linkFlags;//0x484&lt;br /&gt;
		float unk9[3];//0x488&lt;br /&gt;
	int cursorHint;//0x494&lt;br /&gt;
	int cursorHintString;//0x498&lt;br /&gt;
	int cursorHintEntIndex;//0x49C&lt;br /&gt;
	int cursorHintWeapon;//0x4A0&lt;br /&gt;
	int iCompassPlayerInfo;//0x4A4&lt;br /&gt;
	int spyplaneTypeEnabled;//0x4A8&lt;br /&gt;
	int satelliteTypeEnabled;//0x4AC&lt;br /&gt;
	int locationSelectionInfo;//0x4B0&lt;br /&gt;
	int locationSelectionType;//0x4B4&lt;br /&gt;
	SprintState sprintState; //0x4B8&lt;br /&gt;
	float lastDtpEnd;//0x4D4&lt;br /&gt;
	float fTorsoPitch;//0x4D8&lt;br /&gt;
	float fWaistPitch;//0x4DC&lt;br /&gt;
	float holdBreathScale;//0x4E0&lt;br /&gt;
	int holdBreathTimer;//0x4E4&lt;br /&gt;
	int chargeShotTimer;//0x4E8&lt;br /&gt;
	int chargeShotLevel;//0x4EC&lt;br /&gt;
	int shotsFiredFromChamber;//0x4F0&lt;br /&gt;
	float quickScopeScale;//0x4F4&lt;br /&gt;
	int quickScopeTimer;//0x4F8&lt;br /&gt;
	int clientFields;//0x4FC&lt;br /&gt;
	int clientFields2;//0x500&lt;br /&gt;
	int clientFields3;//0x504&lt;br /&gt;
	int entityStateClientFields;//0x508&lt;br /&gt;
	float moveSpeedScaleMultiplier;//0x50C&lt;br /&gt;
	MantleState mantleState;//0x510&lt;br /&gt;
	int vehicleAnimStage;//0x520&lt;br /&gt;
	int vehicleEntryPoint;//0x524&lt;br /&gt;
	int scriptedAnim;//0x528&lt;br /&gt;
		char unk10[4];//0x52C&lt;br /&gt;
	int meleeChargeEnt;//0x530&lt;br /&gt;
	int meleeChargeDist;//0x534&lt;br /&gt;
	int meleeChargeTime;//0x538&lt;br /&gt;
	int weapLockFlags;//0x53C&lt;br /&gt;
	int weapLockedEntnum;//0x540&lt;br /&gt;
		char unk11[4];//0x544&lt;br /&gt;
	int perks[2];//0x548&lt;br /&gt;
	int actionSlotType[4];//0x550&lt;br /&gt;
	int actionSlotParam[4];//0x560&lt;br /&gt;
	int inventoryWeapon;//0x570&lt;br /&gt;
	short wiiumoteAimX;//0x574&lt;br /&gt;
	short wiiumoteAimY;//0x576&lt;br /&gt;
	char wiiuControllerType;//0x578&lt;br /&gt;
	char vehicleDefIndex;//0x579&lt;br /&gt;
	int entityEventSequence;//0x57C&lt;br /&gt;
	int weapAnim;//0x580&lt;br /&gt;
	int weapAnimLeft;//0x584&lt;br /&gt;
	float aimSpreadScale;//0x588&lt;br /&gt;
	int shellshockIndex;//0x58C&lt;br /&gt;
	int shellshockTime;//0x590&lt;br /&gt;
	int shellshockDuration;//0x594&lt;br /&gt;
	float dofNearStart;//0x598&lt;br /&gt;
	float dofNearEnd;//0x59C&lt;br /&gt;
	float dofFarStart;//0x5A0&lt;br /&gt;
	float dofFarEnd;//0x5A4&lt;br /&gt;
	float dofNearBlur;//0x5A8&lt;br /&gt;
	float dofFarBlur;//0x5AC&lt;br /&gt;
	float dofViewmodelStart;//0x5B0&lt;br /&gt;
	float dofViewmodelEnd;//0x5B4&lt;br /&gt;
		char unk12[0xC];//0x5B8&lt;br /&gt;
	int adsZoomSelect;//0x5C4&lt;br /&gt;
		char unk13[4];//0x5C8&lt;br /&gt;
	int adsZoomLatchState;//0x5CC&lt;br /&gt;
	int adsPrevZoomSelect;//0x5D0&lt;br /&gt;
	int adsPrevZoomSelectTime;//0x5D4&lt;br /&gt;
	int artilleryInboundIconLocation;//0x5D8&lt;br /&gt;
	float visionSetLerpRatio;//0x5DC&lt;br /&gt;
	int poisoned;//0x5E0&lt;br /&gt;
	int binocs;//0x5E4&lt;br /&gt;
		char unk14[0x604]; //0x5E8&lt;br /&gt;
	int deltaTime; //0xBEC&lt;br /&gt;
	int killCamEntity; //0xBF0&lt;br /&gt;
	int killCamTargetEntity; //0xBF4&lt;br /&gt;
	int introShotsFired; //0xBF8&lt;br /&gt;
	struct&lt;br /&gt;
	{&lt;br /&gt;
		hudelem_s current[31]; //0xBFC&lt;br /&gt;
		hudelem_s archival[31]; //0x1AFC&lt;br /&gt;
	}hud;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct button_t&lt;br /&gt;
{&lt;br /&gt;
	int buttons;&lt;br /&gt;
	int buttons2; // can someone explain this ?&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct usercmd_s&lt;br /&gt;
{&lt;br /&gt;
	int serverTime; //0x0&lt;br /&gt;
	button_t buttons; //0x4&lt;br /&gt;
	int viewangles[3]; //0xC&lt;br /&gt;
	int weapon; // 0x18&lt;br /&gt;
	int offHandIndex; //0x1C&lt;br /&gt;
		char unk1[4]; //0x20&lt;br /&gt;
	signed char forwardmove; //0x24&lt;br /&gt;
	signed char rightmove; //0x25&lt;br /&gt;
	signed char upmove; //0x26&lt;br /&gt;
	signed char forwardlook; //0x27&lt;br /&gt;
	signed char rightlook; //0x28&lt;br /&gt;
	signed char uplook; //0x29&lt;br /&gt;
		char unk2[0x12]; //0x2A&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct playerTeamState_t&lt;br /&gt;
{&lt;br /&gt;
	int location;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct val64&lt;br /&gt;
{&lt;br /&gt;
	int high; //0x0&lt;br /&gt;
	int low; //0x4&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct clientState_s&lt;br /&gt;
{&lt;br /&gt;
	int clientIndex; //0x0&lt;br /&gt;
	team_t team; //0x4&lt;br /&gt;
	team_t ffaTeam; //0x8&lt;br /&gt;
	int modelindex; //0xC&lt;br /&gt;
		char unk0[4]; //0x10&lt;br /&gt;
	int attachModelIndex[6]; //0x14&lt;br /&gt;
	int attachTagIndex[6]; //0x2C&lt;br /&gt;
	char name[0x20]; //0x44&lt;br /&gt;
	float maxSprintTimeMultiplier; //0x64&lt;br /&gt;
	int rank; //0x68&lt;br /&gt;
	int prestige; //0x6C&lt;br /&gt;
	int lastDamageTime; //0x70&lt;br /&gt;
	int lastStandStartTime; //0x74&lt;br /&gt;
	int turnedHumanTime; //0x78&lt;br /&gt;
	int beingRevived; //0x7C&lt;br /&gt;
	val64 xuid64; //0x80&lt;br /&gt;
	val64 leagueTeamID64; //0x88&lt;br /&gt;
	int leagueDivisionID; //0x90&lt;br /&gt;
		char unk1[4]; //0x94&lt;br /&gt;
	val64 leagueSubdivisionID64; //0x98&lt;br /&gt;
	int leagueSubdivisionRank; //0xA0&lt;br /&gt;
	int perks[2]; //0xA4&lt;br /&gt;
	int voiceConnectivityBits; //0xAC&lt;br /&gt;
	char clanAbbrev[8]; //0xB0&lt;br /&gt;
	int attachedVehEntNum; //0xB8&lt;br /&gt;
	int attachedVehSeat; //0xBC&lt;br /&gt;
	int needsRevive; //0xC0&lt;br /&gt;
	int clanAbbrevEV; //0xC4&lt;br /&gt;
	int vehAnimState; //0xC8&lt;br /&gt;
	struct&lt;br /&gt;
	{&lt;br /&gt;
		int ping; //0xCC&lt;br /&gt;
		int status_icon; //0xD0&lt;br /&gt;
		int place; //0xD4&lt;br /&gt;
		int score; //0xD8&lt;br /&gt;
		int kills; //0xDC&lt;br /&gt;
		int assists; //0xE0&lt;br /&gt;
		int deaths; //0xE4&lt;br /&gt;
		int wagerWinnings; //0xE8&lt;br /&gt;
		int scoreboardColumns[5]; //0xEC&lt;br /&gt;
		int downs; //0x100&lt;br /&gt;
		int revives; //0x104&lt;br /&gt;
		int headshots; //0x108&lt;br /&gt;
			char unk2[4]; //0x10C&lt;br /&gt;
		int currentStreak; //0x110&lt;br /&gt;
	}score;&lt;br /&gt;
	int clientUIVisibilityFlags; //0x114&lt;br /&gt;
	int offhandWeaponVisible; //0x118&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct clientSession_t&lt;br /&gt;
{&lt;br /&gt;
	sessionState_t sessionState; //0x0&lt;br /&gt;
	int spectatorClient; //0x4&lt;br /&gt;
	int killcamEntity; //0x8&lt;br /&gt;
	int killcamTargetEntity; //0xC&lt;br /&gt;
	int archiveTime; //0x10&lt;br /&gt;
	unsigned short scriptPersId; //0x14&lt;br /&gt;
	clientConnected_t connected; //0x18&lt;br /&gt;
	usercmd_s cmd; //0x1C&lt;br /&gt;
	usercmd_s oldcmd; // 0x58&lt;br /&gt;
	int localClient; //0x94 not sure&lt;br /&gt;
	int predictItemPickup; //0x98 not sure&lt;br /&gt;
	char newnetname[0x20]; //0x9C&lt;br /&gt;
	int maxHealth; //0xBC&lt;br /&gt;
	int enterTime; //0xC0 not sure&lt;br /&gt;
	playerTeamState_t teamState; //0xC4 not sure&lt;br /&gt;
	int voteCount; //0xC8 not sure&lt;br /&gt;
	int teamVoteCount; //0xCC not sure&lt;br /&gt;
	float moveSpeedScaleMultiplier; //0xD0&lt;br /&gt;
	int viewmodelIndex; //0xD4&lt;br /&gt;
	int noSpectate; //0xD8 not sure&lt;br /&gt;
	int teamInfo; //0xDC not sure&lt;br /&gt;
	clientState_s cs; //0xE0&lt;br /&gt;
		char unk0[4]; //0x1FC&lt;br /&gt;
	int psOffsetTime; //0x200&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct gclient_s&lt;br /&gt;
{&lt;br /&gt;
	playerState_s ps[2]; //0x0&lt;br /&gt;
	clientSession_t sess; //0x5420&lt;br /&gt;
	int _invalid; //0x5624 //not sure&lt;br /&gt;
	int none; //0x5628 //not sure&lt;br /&gt;
	int score; //0x562C&lt;br /&gt;
	int kills; //0x5630&lt;br /&gt;
	int deaths; //0x5634&lt;br /&gt;
	int assists; //0x5638&lt;br /&gt;
	int defends; //0x563C&lt;br /&gt;
	int plants; //0x5640&lt;br /&gt;
	int defuses; //0x5644&lt;br /&gt;
	int returns; //0x5648&lt;br /&gt;
	int captures; //0x564C&lt;br /&gt;
	int destructions; //0x5650&lt;br /&gt;
	int kdration; //0x5654&lt;br /&gt;
	int survived; //0x5658&lt;br /&gt;
	int stabs; //0x565C&lt;br /&gt;
	int tomahawks; //0x5660&lt;br /&gt;
	int humiliated; //0x5664&lt;br /&gt;
	int x2score; //0x5668&lt;br /&gt;
	int headshots; //0x566C&lt;br /&gt;
	int downs; //0x5670&lt;br /&gt;
	int revives; //0x5674&lt;br /&gt;
	int agrkills; //0x5678&lt;br /&gt;
	int hacks; //0x567C&lt;br /&gt;
	int pointstowin; //0x5680&lt;br /&gt;
	int killsconfirmed; //0x5684&lt;br /&gt;
	int killsdenied; //0x5688&lt;br /&gt;
		char unk1[4]; //0x568C&lt;br /&gt;
	int spectatorClient; //0x5690&lt;br /&gt;
	int mFlags; //0x5694&lt;br /&gt;
	int lastCmdTime; //0x5698&lt;br /&gt;
	button_t buttons; //0x569C&lt;br /&gt;
	button_t latchedButtons; //0x56A4&lt;br /&gt;
	button_t buttonsSinceLastFrame; //0x56AC&lt;br /&gt;
	button_t actionSlots; //0x56B4&lt;br /&gt;
	float fGunPitch; //0x56BC&lt;br /&gt;
	float fGunYaw; //0x56C0&lt;br /&gt;
		char unk3[4]; //0x56C4&lt;br /&gt;
	float damage_from[3]; //0x56C8&lt;br /&gt;
		char unk4[4]; //0x56D4&lt;br /&gt;
	int inactivityTime; //0x56D8&lt;br /&gt;
	int inactivityWarning; //0x56DC&lt;br /&gt;
		char unk5[0x2A]; //0x56E0&lt;br /&gt;
	bool linkCollision; //0x570A&lt;br /&gt;
	char linkTag; //0x570B&lt;br /&gt;
	float viewFraction; //0x570C&lt;br /&gt;
		float unk6[4]; //0x5710&lt;br /&gt;
	float topArc; //0x5720&lt;br /&gt;
	float rightArc; //0x5724&lt;br /&gt;
		float unk7[4]; //0x5728&lt;br /&gt;
	float bottomArc; //0x5738&lt;br /&gt;
	float leftArc; //0x573C&lt;br /&gt;
		char unk8[0x18]; //0x5740&lt;br /&gt;
	int useButtonDone; //0x5758&lt;br /&gt;
	int iLastCompassPlayerInfoEnt; //0x575C&lt;br /&gt;
	int compassPingTime; //0x5760&lt;br /&gt;
		char unk9[0x84]; //0x5764&lt;br /&gt;
	int spyplane; //0x57E8&lt;br /&gt;
	int satellite; //0x57EC&lt;br /&gt;
		char unk10[0x10]; //0x57F0&lt;br /&gt;
	int lastStand; //0x5800&lt;br /&gt;
		char unk11[4]; //0x5804&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>Therifboy</name></author>
	</entry>
	<entry>
		<id>https://codresearch.dev/index.php?title=Game_Client_(BO2)&amp;diff=612</id>
		<title>Game Client (BO2)</title>
		<link rel="alternate" type="text/html" href="https://codresearch.dev/index.php?title=Game_Client_(BO2)&amp;diff=612"/>
		<updated>2014-11-20T15:16:50Z</updated>

		<summary type="html">&lt;p&gt;Therifboy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Game Structures]]&lt;br /&gt;
[[Category:BO2]]&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
/* gclient_s-&amp;gt;buttons.buttons */&lt;br /&gt;
#define __jump			0x00200000&lt;br /&gt;
#define __stance		0x00000200&lt;br /&gt;
#define __use			0x04000000&lt;br /&gt;
#define __triangle		0x00000008&lt;br /&gt;
#define __attack		0x80000000&lt;br /&gt;
#define __ads			0x00100000&lt;br /&gt;
#define __prone			0x00800000&lt;br /&gt;
#define __crouch		0x00400000&lt;br /&gt;
#define __frag			0x00020000&lt;br /&gt;
#define __tactical		0x00010000&lt;br /&gt;
#define __melee			0x20000000&lt;br /&gt;
#define __sprint		0x40000000&lt;br /&gt;
&lt;br /&gt;
/* gclient_s-&amp;gt;actionSlots.buttons2 */&lt;br /&gt;
#define __dpadup		0x00040000&lt;br /&gt;
#define __dpaddown		0x00020000&lt;br /&gt;
#define __dpadleft		0x00010000&lt;br /&gt;
#define __dpadright		0x00008000&lt;br /&gt;
&lt;br /&gt;
enum team_t&lt;br /&gt;
{&lt;br /&gt;
	TEAM_FREE = 0x0,&lt;br /&gt;
	TEAM_ALLIES = 0x1,&lt;br /&gt;
	TEAM_AXIS = 0x2,&lt;br /&gt;
	TEAM_THREE = 0x3,&lt;br /&gt;
	TEAM_FOUR = 0x4,&lt;br /&gt;
	TEAM_FIVE = 0x5,&lt;br /&gt;
	TEAM_SIX = 0x6,&lt;br /&gt;
	TEAM_SEVEN = 0x7,&lt;br /&gt;
	TEAM_EIGHT = 0x8,&lt;br /&gt;
	TEAM_MAX = 0x9&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
enum sessionState_t&lt;br /&gt;
{&lt;br /&gt;
	SESS_STATE_PLAYING = 0x0,&lt;br /&gt;
	SESS_STATE_DEAD = 0x1,&lt;br /&gt;
	SESS_STATE_SPECTATOR = 0x2,&lt;br /&gt;
	SESS_STATE_INTERMISSION = 0x3,&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
enum clientConnected_t&lt;br /&gt;
{&lt;br /&gt;
	CON_DISCONNECTED = 0x0,&lt;br /&gt;
	CON_CONNECTING = 0x1,&lt;br /&gt;
	CON_CONNECTED = 0x2,&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct VehicleState&lt;br /&gt;
{&lt;br /&gt;
	float origin[3];//0&lt;br /&gt;
	float angles[3];//0xC&lt;br /&gt;
	float velocity[3];//0x18&lt;br /&gt;
	float angVelocity[3];//0x24&lt;br /&gt;
	float tilt[2];//0x30&lt;br /&gt;
	float tiltVelocity[2];//0x38&lt;br /&gt;
	float targetHeightDelta;//0x40&lt;br /&gt;
	float lastGroundHeight;//0x44&lt;br /&gt;
	int entity;//0x48&lt;br /&gt;
	int flags;//0x4C&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct SprintState&lt;br /&gt;
{&lt;br /&gt;
	int sprintButtonUpRequired;//0x0&lt;br /&gt;
	int sprintDelay;//0x4&lt;br /&gt;
	int lastSprintStart;//0x8&lt;br /&gt;
	int lastSprintEnd;//0xC&lt;br /&gt;
	int sprintStartMaxLength;//0x10&lt;br /&gt;
	int sprintDuration;//0x14&lt;br /&gt;
	int sprintCooldown;//0x18&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct MantleState&lt;br /&gt;
{&lt;br /&gt;
	float yaw; //0x0&lt;br /&gt;
	int timer; //0x4&lt;br /&gt;
	int transIndex; //0x8&lt;br /&gt;
	int flags; //0xC&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct playerState_s&lt;br /&gt;
{&lt;br /&gt;
	int commandTime;//0x0&lt;br /&gt;
	int pm_type;//0x4&lt;br /&gt;
	int bobCycle; //0x8&lt;br /&gt;
	int pm_flags; //0xC&lt;br /&gt;
	long long weapFlags;//0x10&lt;br /&gt;
	int otherFlags;//0x18&lt;br /&gt;
	int pm_time;//0x1C&lt;br /&gt;
	short ownerNum;//0x20&lt;br /&gt;
	short name;//0x22&lt;br /&gt;
	char progress;//0x24&lt;br /&gt;
	vec3_t origin;//0x28&lt;br /&gt;
	vec3_t velocity;//0x34&lt;br /&gt;
	int playerCamEnt; //0x40&lt;br /&gt;
	int playerCamTag; //0x44&lt;br /&gt;
		char unk1[4]; //0x48&lt;br /&gt;
	int weaponTime;//0x4C&lt;br /&gt;
	int weaponDelay;//0x50&lt;br /&gt;
	int weaponTimeLeft;//0x54&lt;br /&gt;
		char unk2[4];//0x58&lt;br /&gt;
	int weaponIdleTime;//0x5C&lt;br /&gt;
	int grenadeTimeLeft;//0x60&lt;br /&gt;
	int throwBackGrenadeOwner;//0x64&lt;br /&gt;
	int throwBackGrenadeTimeLeft;//0x68&lt;br /&gt;
	int weaponRestrictKickTime;//0x6C&lt;br /&gt;
		char unk3[0x14];//0x60&lt;br /&gt;
	bool bThirdPerson;//0x84&lt;br /&gt;
	int foliageSoundTime;//0x88&lt;br /&gt;
	int gravity;//0x8C&lt;br /&gt;
	float leanf;//0x90&lt;br /&gt;
	int speed;//0x94&lt;br /&gt;
	float delta_angles[3];//0x98&lt;br /&gt;
	int groundEntityNum;//0xA4&lt;br /&gt;
	int moverEntityNum;//0xA8&lt;br /&gt;
	int moverTimestamp;//0xAC&lt;br /&gt;
		char unk4[4];//0xB0&lt;br /&gt;
	float vLadderVec[3];//0xB4&lt;br /&gt;
	int jumpTime;//0xC0&lt;br /&gt;
	float jumpOriginZ;//0xC4&lt;br /&gt;
	int slideTime;//0xC8&lt;br /&gt;
	int moveType;//0xCC&lt;br /&gt;
	int legsTimer;//0xD0&lt;br /&gt;
	int torsoTimer;//0xD4&lt;br /&gt;
	int legsAnim;//0xD8&lt;br /&gt;
	int torsoAnim;//0xDC&lt;br /&gt;
		char unk5[4];//0xE0&lt;br /&gt;
	int damageTimer;//0xE4&lt;br /&gt;
	int damageDuration;//0xE8&lt;br /&gt;
	int dmgDirection;//0xEC&lt;br /&gt;
	int dmgType;//0xF0&lt;br /&gt;
	int corpseIndex;//0xF4&lt;br /&gt;
	int movementDir;//0xF8&lt;br /&gt;
	int eFlags;//0xFC&lt;br /&gt;
	int eFlags2;//0x100&lt;br /&gt;
	VehicleState vehicleState;//0x104&lt;br /&gt;
		char unk6[4];//0x154&lt;br /&gt;
	short predictableEventSequence;//0x158&lt;br /&gt;
	short predictableEventSequenceOld;//0x15A&lt;br /&gt;
	int predictableEvents[4];//0x15C&lt;br /&gt;
	int predictableEventParms[4];//0x16C&lt;br /&gt;
	short unpredictableEventSequence; //0x17C&lt;br /&gt;
	short oldUnpredictableEventSequence;//0x17E&lt;br /&gt;
	int unpredictableEvents[4];//0x180&lt;br /&gt;
	int unpredictableEventParms[4];//0x190&lt;br /&gt;
	int clientNum;//0x1A0&lt;br /&gt;
	int offHandWeapon;//0x1A4&lt;br /&gt;
	int offhandSecondary;//0x1A8&lt;br /&gt;
	int offhandPrimary;//0x1AC&lt;br /&gt;
	int renderOptions;//0x1B0&lt;br /&gt;
	int momentum;//0x1B4&lt;br /&gt;
	int weapon;//0x1B8&lt;br /&gt;
	unsigned int lastStandPrevWeapon;//0x1BC&lt;br /&gt;
	int lastWeaponAltModeSwitch;//0x1C0&lt;br /&gt;
	unsigned int stowedWeapon;//0x1C4&lt;br /&gt;
		char unk7[4];//0x1C8&lt;br /&gt;
	unsigned int meleeWeapon;//0x1CC&lt;br /&gt;
	int weaponstate;//0x1D0&lt;br /&gt;
	int weaponstateLeft;//0x1D4&lt;br /&gt;
	unsigned int weaponShotCount;//0x1D8&lt;br /&gt;
	int weaponShotCountLeft;//0x1DC&lt;br /&gt;
	float fWeaponPosFrac;//0x1E0&lt;br /&gt;
	int adsDelayTime;//0x1E4&lt;br /&gt;
	int spreadOverride;//0x1E8&lt;br /&gt;
	int spreadOverrideState;//0x1EC&lt;br /&gt;
	int weaponSpinLerp;//0x1F0&lt;br /&gt;
	int viewmodelIndex;//0x1F4&lt;br /&gt;
	float viewangles[3];//0x1F8&lt;br /&gt;
	int viewHeightTarget;//0x204&lt;br /&gt;
	float viewHeightCurrent;//0x208&lt;br /&gt;
	int viewHeightLerpTime;//0x20C&lt;br /&gt;
	int viewHeightLerpTarget;//0x210&lt;br /&gt;
	int viewHeightLerpDown;//0x214&lt;br /&gt;
	float viewAngleClampBase[2];//0x218&lt;br /&gt;
	float viewAngleClampRange[2];//0x220&lt;br /&gt;
	int damageEvent;//0x228&lt;br /&gt;
	int damageYaw;//0x22C&lt;br /&gt;
	int damagePitch;//0x230&lt;br /&gt;
	int damageCount;//0x234&lt;br /&gt;
	int health;//0x238&lt;br /&gt;
		char unk8[0xC];//0x23C&lt;br /&gt;
	struct&lt;br /&gt;
	{&lt;br /&gt;
		int weapon;//0x0&lt;br /&gt;
		int renderOptions;//0x4&lt;br /&gt;
		float shootSoundFade;//0x8&lt;br /&gt;
		char unk0[0xD];//0xC&lt;br /&gt;
		char model;//0x19&lt;br /&gt;
		char unk1[0x2]; //0x1A&lt;br /&gt;
	} heldWeapon[0xF];//0x248&lt;br /&gt;
	int ammo[0xF];//0x3EC&lt;br /&gt;
	int ammoClip[0xF];//0x428&lt;br /&gt;
	float proneDirection;//0x464&lt;br /&gt;
	float proneDirectionPitch;//0x468&lt;br /&gt;
	float proneTorsoPitch;//0x46C&lt;br /&gt;
	int viewlocked;//0x470&lt;br /&gt;
	short viewlocked_entNum;//0x474&lt;br /&gt;
	int vehiclePos;//0x478&lt;br /&gt;
	int vehicleType;//0x47C&lt;br /&gt;
	int vehicleAnimBoneIndex;//0x480&lt;br /&gt;
	int linkFlags;//0x484&lt;br /&gt;
		float unk9[3];//0x488&lt;br /&gt;
	int cursorHint;//0x494&lt;br /&gt;
	int cursorHintString;//0x498&lt;br /&gt;
	int cursorHintEntIndex;//0x49C&lt;br /&gt;
	int cursorHintWeapon;//0x4A0&lt;br /&gt;
	int iCompassPlayerInfo;//0x4A4&lt;br /&gt;
	int spyplaneTypeEnabled;//0x4A8&lt;br /&gt;
	int satelliteTypeEnabled;//0x4AC&lt;br /&gt;
	int locationSelectionInfo;//0x4B0&lt;br /&gt;
	int locationSelectionType;//0x4B4&lt;br /&gt;
	SprintState sprintState; //0x4B8&lt;br /&gt;
	float lastDtpEnd;//0x4D4&lt;br /&gt;
	float fTorsoPitch;//0x4D8&lt;br /&gt;
	float fWaistPitch;//0x4DC&lt;br /&gt;
	float holdBreathScale;//0x4E0&lt;br /&gt;
	int holdBreathTimer;//0x4E4&lt;br /&gt;
	int chargeShotTimer;//0x4E8&lt;br /&gt;
	int chargeShotLevel;//0x4EC&lt;br /&gt;
	int shotsFiredFromChamber;//0x4F0&lt;br /&gt;
	float quickScopeScale;//0x4F4&lt;br /&gt;
	int quickScopeTimer;//0x4F8&lt;br /&gt;
	int clientFields;//0x4FC&lt;br /&gt;
	int clientFields2;//0x500&lt;br /&gt;
	int clientFields3;//0x504&lt;br /&gt;
	int entityStateClientFields;//0x508&lt;br /&gt;
	float moveSpeedScaleMultiplier;//0x50C&lt;br /&gt;
	MantleState mantleState;//0x510&lt;br /&gt;
	int vehicleAnimStage;//0x520&lt;br /&gt;
	int vehicleEntryPoint;//0x524&lt;br /&gt;
	int scriptedAnim;//0x528&lt;br /&gt;
		char unk10[4];//0x52C&lt;br /&gt;
	int meleeChargeEnt;//0x530&lt;br /&gt;
	int meleeChargeDist;//0x534&lt;br /&gt;
	int meleeChargeTime;//0x538&lt;br /&gt;
	int weapLockFlags;//0x53C&lt;br /&gt;
	int weapLockedEntnum;//0x540&lt;br /&gt;
		char unk11[4];//0x544&lt;br /&gt;
	int perks[2];//0x548&lt;br /&gt;
	int actionSlotType[4];//0x550&lt;br /&gt;
	int actionSlotParam[4];//0x560&lt;br /&gt;
	int inventoryWeapon;//0x570&lt;br /&gt;
	short wiiumoteAimX;//0x574&lt;br /&gt;
	short wiiumoteAimY;//0x576&lt;br /&gt;
	char wiiuControllerType;//0x578&lt;br /&gt;
	char vehicleDefIndex;//0x579&lt;br /&gt;
	int entityEventSequence;//0x57C&lt;br /&gt;
	int weapAnim;//0x580&lt;br /&gt;
	int weapAnimLeft;//0x584&lt;br /&gt;
	float aimSpreadScale;//0x588&lt;br /&gt;
	int shellshockIndex;//0x58C&lt;br /&gt;
	int shellshockTime;//0x590&lt;br /&gt;
	int shellshockDuration;//0x594&lt;br /&gt;
	float dofNearStart;//0x598&lt;br /&gt;
	float dofNearEnd;//0x59C&lt;br /&gt;
	float dofFarStart;//0x5A0&lt;br /&gt;
	float dofFarEnd;//0x5A4&lt;br /&gt;
	float dofNearBlur;//0x5A8&lt;br /&gt;
	float dofFarBlur;//0x5AC&lt;br /&gt;
	float dofViewmodelStart;//0x5B0&lt;br /&gt;
	float dofViewmodelEnd;//0x5B4&lt;br /&gt;
		char unk12[0xC];//0x5B8&lt;br /&gt;
	int adsZoomSelect;//0x5C4&lt;br /&gt;
		char unk13[4];//0x5C8&lt;br /&gt;
	int adsZoomLatchState;//0x5CC&lt;br /&gt;
	int adsPrevZoomSelect;//0x5D0&lt;br /&gt;
	int adsPrevZoomSelectTime;//0x5D4&lt;br /&gt;
	int artilleryInboundIconLocation;//0x5D8&lt;br /&gt;
	float visionSetLerpRatio;//0x5DC&lt;br /&gt;
	int poisoned;//0x5E0&lt;br /&gt;
	int binocs;//0x5E4&lt;br /&gt;
		char unk14[0x604]; //0x5E8&lt;br /&gt;
	int deltaTime; //0xBEC&lt;br /&gt;
	int killCamEntity; //0xBF0&lt;br /&gt;
	int killCamTargetEntity; //0xBF4&lt;br /&gt;
	int intoShotsFired; //0xBF8&lt;br /&gt;
	struct&lt;br /&gt;
	{&lt;br /&gt;
		hudelem_s current[31]; //0xBFC&lt;br /&gt;
		hudelem_s archival[31]; //0x1AFC&lt;br /&gt;
	}hud;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct button_t&lt;br /&gt;
{&lt;br /&gt;
	int buttons;&lt;br /&gt;
	int buttons2; // can someone explain this ?&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct usercmd_s&lt;br /&gt;
{&lt;br /&gt;
	int serverTime; //0x0&lt;br /&gt;
	button_t buttons; //0x4&lt;br /&gt;
	int viewangles[3]; //0xC&lt;br /&gt;
	int weapon; // 0x18&lt;br /&gt;
	int offHandIndex; //0x1C&lt;br /&gt;
		char unk1[4]; //0x20&lt;br /&gt;
	signed char forwardmove; //0x24&lt;br /&gt;
	signed char rightmove; //0x25&lt;br /&gt;
	signed char upmove; //0x26&lt;br /&gt;
	signed char forwardlook; //0x27&lt;br /&gt;
	signed char rightlook; //0x28&lt;br /&gt;
	signed char uplook; //0x29&lt;br /&gt;
		char unk2[0x12]; //0x2A&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct playerTeamState_t&lt;br /&gt;
{&lt;br /&gt;
	int location;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct val64&lt;br /&gt;
{&lt;br /&gt;
	int high; //0x0&lt;br /&gt;
	int low; //0x4&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct clientState_s&lt;br /&gt;
{&lt;br /&gt;
	int clientIndex; //0x0&lt;br /&gt;
	team_t team; //0x4&lt;br /&gt;
	team_t ffaTeam; //0x8&lt;br /&gt;
	int modelindex; //0xC&lt;br /&gt;
		char unk0[4]; //0x10&lt;br /&gt;
	int attachModelIndex[6]; //0x14&lt;br /&gt;
	int attachTagIndex[6]; //0x2C&lt;br /&gt;
	char name[0x20]; //0x44&lt;br /&gt;
	float maxSprintTimeMultiplier; //0x64&lt;br /&gt;
	int rank; //0x68&lt;br /&gt;
	int prestige; //0x6C&lt;br /&gt;
	int lastDamageTime; //0x70&lt;br /&gt;
	int lastStandStartTime; //0x74&lt;br /&gt;
	int turnedHumanTime; //0x78&lt;br /&gt;
	int beingRevived; //0x7C&lt;br /&gt;
	val64 xuid64; //0x80&lt;br /&gt;
	val64 leagueTeamID64; //0x88&lt;br /&gt;
	int leagueDivisionID; //0x90&lt;br /&gt;
		char unk1[4]; //0x94&lt;br /&gt;
	val64 leagueSubdivisionID64; //0x98&lt;br /&gt;
	int leagueSubdivisionRank; //0xA0&lt;br /&gt;
	int perks[2]; //0xA4&lt;br /&gt;
	int voiceConnectivityBits; //0xAC&lt;br /&gt;
	char clanAbbrev[8]; //0xB0&lt;br /&gt;
	int attachedVehEntNum; //0xB8&lt;br /&gt;
	int attachedVehSeat; //0xBC&lt;br /&gt;
	int needsRevive; //0xC0&lt;br /&gt;
	int clanAbbrevEV; //0xC4&lt;br /&gt;
	int vehAnimState; //0xC8&lt;br /&gt;
	struct&lt;br /&gt;
	{&lt;br /&gt;
		int ping; //0xCC&lt;br /&gt;
		int status_icon; //0xD0&lt;br /&gt;
		int place; //0xD4&lt;br /&gt;
		int score; //0xD8&lt;br /&gt;
		int kills; //0xDC&lt;br /&gt;
		int assists; //0xE0&lt;br /&gt;
		int deaths; //0xE4&lt;br /&gt;
		int wagerWinnings; //0xE8&lt;br /&gt;
		int scoreboardColumns[5]; //0xEC&lt;br /&gt;
		int downs; //0x100&lt;br /&gt;
		int revives; //0x104&lt;br /&gt;
		int headshots; //0x108&lt;br /&gt;
			char unk2[4]; //0x10C&lt;br /&gt;
		int currentStreak; //0x110&lt;br /&gt;
	}score;&lt;br /&gt;
	int clientUIVisibilityFlags; //0x114&lt;br /&gt;
	int offhandWeaponVisible; //0x118&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct clientSession_t&lt;br /&gt;
{&lt;br /&gt;
	sessionState_t sessionState; //0x0&lt;br /&gt;
	int spectatorClient; //0x4&lt;br /&gt;
	int killcamEntity; //0x8&lt;br /&gt;
	int killcamTargetEntity; //0xC&lt;br /&gt;
	int archiveTime; //0x10&lt;br /&gt;
	unsigned short scriptPersId; //0x14&lt;br /&gt;
	clientConnected_t connected; //0x18&lt;br /&gt;
	usercmd_s cmd; //0x1C&lt;br /&gt;
	usercmd_s oldcmd; // 0x58&lt;br /&gt;
	int localClient; //0x94 not sure&lt;br /&gt;
	int predictItemPickup; //0x98 not sure&lt;br /&gt;
	char newnetname[0x20]; //0x9C&lt;br /&gt;
	int maxHealth; //0xBC&lt;br /&gt;
	int enterTime; //0xC0 not sure&lt;br /&gt;
	playerTeamState_t teamState; //0xC4 not sure&lt;br /&gt;
	int voteCount; //0xC8 not sure&lt;br /&gt;
	int teamVoteCount; //0xCC not sure&lt;br /&gt;
	float moveSpeedScaleMultiplier; //0xD0&lt;br /&gt;
	int viewmodelIndex; //0xD4&lt;br /&gt;
	int noSpectate; //0xD8 not sure&lt;br /&gt;
	int teamInfo; //0xDC not sure&lt;br /&gt;
	clientState_s cs; //0xE0&lt;br /&gt;
		char unk0[4]; //0x1FC&lt;br /&gt;
	int psOffsetTime; //0x200&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct gclient_s&lt;br /&gt;
{&lt;br /&gt;
	playerState_s ps[2]; //0x0&lt;br /&gt;
	clientSession_t sess; //0x5420&lt;br /&gt;
	int _invalid; //0x5624 //not sure&lt;br /&gt;
	int none; //0x5628 //not sure&lt;br /&gt;
	int score; //0x562C&lt;br /&gt;
	int kills; //0x5630&lt;br /&gt;
	int deaths; //0x5634&lt;br /&gt;
	int assists; //0x5638&lt;br /&gt;
	int defends; //0x563C&lt;br /&gt;
	int plants; //0x5640&lt;br /&gt;
	int defuses; //0x5644&lt;br /&gt;
	int returns; //0x5648&lt;br /&gt;
	int captures; //0x564C&lt;br /&gt;
	int destructions; //0x5650&lt;br /&gt;
	int kdration; //0x5654&lt;br /&gt;
	int survived; //0x5658&lt;br /&gt;
	int stabs; //0x565C&lt;br /&gt;
	int tomahawks; //0x5660&lt;br /&gt;
	int humiliated; //0x5664&lt;br /&gt;
	int x2score; //0x5668&lt;br /&gt;
	int headshots; //0x566C&lt;br /&gt;
	int downs; //0x5670&lt;br /&gt;
	int revives; //0x5674&lt;br /&gt;
	int agrkills; //0x5678&lt;br /&gt;
	int hacks; //0x567C&lt;br /&gt;
	int pointstowin; //0x5680&lt;br /&gt;
	int killsconfirmed; //0x5684&lt;br /&gt;
	int killsdenied; //0x5688&lt;br /&gt;
		char unk1[4]; //0x568C&lt;br /&gt;
	int spectatorClient; //0x5690&lt;br /&gt;
	int mFlags; //0x5694&lt;br /&gt;
	int lastCmdTime; //0x5698&lt;br /&gt;
	button_t buttons; //0x569C&lt;br /&gt;
	button_t latchedButtons; //0x56A4&lt;br /&gt;
	button_t buttonsSinceLastFrame; //0x56AC&lt;br /&gt;
	button_t actionSlots; //0x56B4&lt;br /&gt;
	float fGunPitch; //0x56BC&lt;br /&gt;
	float fGunYaw; //0x56C0&lt;br /&gt;
		char unk3[4]; //0x56C4&lt;br /&gt;
	float damage_from[3]; //0x56C8&lt;br /&gt;
		char unk4[4]; //0x56D4&lt;br /&gt;
	int inactivityTime; //0x56D8&lt;br /&gt;
	int inactivityWarning; //0x56DC&lt;br /&gt;
		char unk5[0x2A]; //0x56E0&lt;br /&gt;
	bool linkCollision; //0x570A&lt;br /&gt;
	char linkTag; //0x570B&lt;br /&gt;
	float viewFraction; //0x570C&lt;br /&gt;
		float unk6[4]; //0x5710&lt;br /&gt;
	float topArc; //0x5720&lt;br /&gt;
	float rightArc; //0x5724&lt;br /&gt;
		float unk7[4]; //0x5728&lt;br /&gt;
	float bottomArc; //0x5738&lt;br /&gt;
	float leftArc; //0x573C&lt;br /&gt;
		char unk8[0x18]; //0x5740&lt;br /&gt;
	int useButtonDone; //0x5758&lt;br /&gt;
	int iLastCompassPlayerInfoEnt; //0x575C&lt;br /&gt;
	int compassPingTime; //0x5760&lt;br /&gt;
		char unk9[0x84]; //0x5764&lt;br /&gt;
	int spyplane; //0x57E8&lt;br /&gt;
	int satellite; //0x57EC&lt;br /&gt;
		char unk10[0x10]; //0x57F0&lt;br /&gt;
	int lastStand; //0x5800&lt;br /&gt;
		char unk11[4]; //0x5804&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>Therifboy</name></author>
	</entry>
	<entry>
		<id>https://codresearch.dev/index.php?title=Game_Client_(BO2)&amp;diff=611</id>
		<title>Game Client (BO2)</title>
		<link rel="alternate" type="text/html" href="https://codresearch.dev/index.php?title=Game_Client_(BO2)&amp;diff=611"/>
		<updated>2014-11-20T15:10:14Z</updated>

		<summary type="html">&lt;p&gt;Therifboy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Game Structures]]&lt;br /&gt;
[[Category:BO2]]&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
/* gclient_s-&amp;gt;buttons.buttons */&lt;br /&gt;
#define __jump			0x00200000&lt;br /&gt;
#define __stance		0x00000200&lt;br /&gt;
#define __use			0x04000000&lt;br /&gt;
#define __triangle		0x00000008&lt;br /&gt;
#define __attack		0x80000000&lt;br /&gt;
#define __ads			0x00100000&lt;br /&gt;
#define __prone			0x00800000&lt;br /&gt;
#define __crouch		0x00400000&lt;br /&gt;
#define __frag			0x00020000&lt;br /&gt;
#define __tactical		0x00010000&lt;br /&gt;
#define __melee			0x20000000&lt;br /&gt;
#define __sprint		0x40000000&lt;br /&gt;
&lt;br /&gt;
/* gclient_s-&amp;gt;actionSlots.buttons2 */&lt;br /&gt;
#define __dpadup		0x00040000&lt;br /&gt;
#define __dpaddown		0x00020000&lt;br /&gt;
#define __dpadleft		0x00010000&lt;br /&gt;
#define __dpadright		0x00008000&lt;br /&gt;
&lt;br /&gt;
enum team_t&lt;br /&gt;
{&lt;br /&gt;
	TEAM_FREE = 0x0,&lt;br /&gt;
	TEAM_ALLIES = 0x1,&lt;br /&gt;
	TEAM_AXIS = 0x2,&lt;br /&gt;
	TEAM_THREE = 0x3,&lt;br /&gt;
	TEAM_FOUR = 0x4,&lt;br /&gt;
	TEAM_FIVE = 0x5,&lt;br /&gt;
	TEAM_SIX = 0x6,&lt;br /&gt;
	TEAM_SEVEN = 0x7,&lt;br /&gt;
	TEAM_EIGHT = 0x8,&lt;br /&gt;
	TEAM_MAX = 0x9&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
enum sessionState_t&lt;br /&gt;
{&lt;br /&gt;
	SESS_STATE_PLAYING = 0x0,&lt;br /&gt;
	SESS_STATE_DEAD = 0x1,&lt;br /&gt;
	SESS_STATE_SPECTATOR = 0x2,&lt;br /&gt;
	SESS_STATE_INTERMISSION = 0x3,&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
enum clientConnected_t&lt;br /&gt;
{&lt;br /&gt;
	CON_DISCONNECTED = 0x0,&lt;br /&gt;
	CON_CONNECTING = 0x1,&lt;br /&gt;
	CON_CONNECTED = 0x2,&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct VehicleState&lt;br /&gt;
{&lt;br /&gt;
	float origin[3];//0&lt;br /&gt;
	float angles[3];//0xC&lt;br /&gt;
	float velocity[3];//0x18&lt;br /&gt;
	float angVelocity[3];//0x24&lt;br /&gt;
	float tilt[2];//0x30&lt;br /&gt;
	float tiltVelocity[2];//0x38&lt;br /&gt;
	float targetHeightDelta;//0x40&lt;br /&gt;
	float lastGroundHeight;//0x44&lt;br /&gt;
	int entity;//0x48&lt;br /&gt;
	int flags;//0x4C&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct SprintState&lt;br /&gt;
{&lt;br /&gt;
	int sprintButtonUpRequired;//0x0&lt;br /&gt;
	int sprintDelay;//0x4&lt;br /&gt;
	int lastSprintStart;//0x8&lt;br /&gt;
	int lastSprintEnd;//0xC&lt;br /&gt;
	int sprintStartMaxLength;//0x10&lt;br /&gt;
	int sprintDuration;//0x14&lt;br /&gt;
	int sprintCooldown;//0x18&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct MantleState&lt;br /&gt;
{&lt;br /&gt;
	float yaw; //0x0&lt;br /&gt;
	int timer; //0x4&lt;br /&gt;
	int transIndex; //0x8&lt;br /&gt;
	int flags; //0xC&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct playerState_s&lt;br /&gt;
{&lt;br /&gt;
	int commandTime;//0x0&lt;br /&gt;
	int pm_type;//0x4&lt;br /&gt;
	int bobCycle; //0x8&lt;br /&gt;
	int pm_flags; //0xC&lt;br /&gt;
	long long weapFlags;//0x10&lt;br /&gt;
	int otherFlags;//0x18&lt;br /&gt;
	int pm_time;//0x1C&lt;br /&gt;
	short ownerNum;//0x20&lt;br /&gt;
	short name;//0x22&lt;br /&gt;
	char progress;//0x24&lt;br /&gt;
	vec3_t origin;//0x28&lt;br /&gt;
	vec3_t velocity;//0x34&lt;br /&gt;
	int playerCamEnt; //0x40&lt;br /&gt;
	int playerCamTag; //0x44&lt;br /&gt;
		char unk1[4]; //0x48&lt;br /&gt;
	int weaponTime;//0x4C&lt;br /&gt;
	int weaponDelay;//0x50&lt;br /&gt;
	int weaponTimeLeft;//0x54&lt;br /&gt;
		char unk2[4];//0x58&lt;br /&gt;
	int weaponIdleTime;//0x5C&lt;br /&gt;
	int grenadeTimeLeft;//0x60&lt;br /&gt;
	int throwBackGrenadeOwner;//0x64&lt;br /&gt;
	int throwBackGrenadeTimeLeft;//0x68&lt;br /&gt;
	int weaponRestrictKickTime;//0x6C&lt;br /&gt;
		char unk3[0x14];//0x60&lt;br /&gt;
	bool bThirdPerson;//0x84&lt;br /&gt;
	int foliageSoundTime;//0x88&lt;br /&gt;
	int gravity;//0x8C&lt;br /&gt;
	float leanf;//0x90&lt;br /&gt;
	int speed;//0x94&lt;br /&gt;
	float delta_angles[3];//0x98&lt;br /&gt;
	int groundEntityNum;//0xA4&lt;br /&gt;
	int moverEntityNum;//0xA8&lt;br /&gt;
	int moverTimestamp;//0xAC&lt;br /&gt;
		char unk4[4];//0xB0&lt;br /&gt;
	float vLadderVec[3];//0xB4&lt;br /&gt;
	int jumpTime;//0xC0&lt;br /&gt;
	float jumpOriginZ;//0xC4&lt;br /&gt;
	int slideTime;//0xC8&lt;br /&gt;
	int moveType;//0xCC&lt;br /&gt;
	int legsTimer;//0xD0&lt;br /&gt;
	int torsoTimer;//0xD4&lt;br /&gt;
	int legsAnim;//0xD8&lt;br /&gt;
	int torsoAnim;//0xDC&lt;br /&gt;
		char unk5[4];//0xE0&lt;br /&gt;
	int damageTimer;//0xE4&lt;br /&gt;
	int damageDuration;//0xE8&lt;br /&gt;
	int dmgDirection;//0xEC&lt;br /&gt;
	int dmgType;//0xF0&lt;br /&gt;
	int corpseIndex;//0xF4&lt;br /&gt;
	int movementDir;//0xF8&lt;br /&gt;
	int eFlags;//0xFC&lt;br /&gt;
	int eFlags2;//0x100&lt;br /&gt;
	VehicleState vehicleState;//0x104&lt;br /&gt;
		char unk6[4];//0x154&lt;br /&gt;
	short predictableEventSequence;//0x158&lt;br /&gt;
	short predictableEventSequenceOld;//0x15A&lt;br /&gt;
	int predictableEvents[4];//0x15C&lt;br /&gt;
	int predictableEventParms[4];//0x16C&lt;br /&gt;
	short unpredictableEventSequence; //0x17C&lt;br /&gt;
	short oldUnpredictableEventSequence;//0x17E&lt;br /&gt;
	int unpredictableEvents[4];//0x180&lt;br /&gt;
	int unpredictableEventParms[4];//0x190&lt;br /&gt;
	int clientNum;//0x1A0&lt;br /&gt;
	int offHandWeapon;//0x1A4&lt;br /&gt;
	int offhandSecondary;//0x1A8&lt;br /&gt;
	int offhandPrimary;//0x1AC&lt;br /&gt;
	int renderOptions;//0x1B0&lt;br /&gt;
	int momentum;//0x1B4&lt;br /&gt;
	int weapon;//0x1B8&lt;br /&gt;
	unsigned int lastStandPrevWeapon;//0x1BC&lt;br /&gt;
	int lastWeaponAltModeSwitch;//0x1C0&lt;br /&gt;
	unsigned int stowedWeapon;//0x1C4&lt;br /&gt;
		char unk7[4];//0x1C8&lt;br /&gt;
	unsigned int meleeWeapon;//0x1CC&lt;br /&gt;
	int weaponstate;//0x1D0&lt;br /&gt;
	int weaponstateLeft;//0x1D4&lt;br /&gt;
	unsigned int weaponShotCount;//0x1D8&lt;br /&gt;
	int weaponShotCountLeft;//0x1DC&lt;br /&gt;
	float fWeaponPosFrac;//0x1E0&lt;br /&gt;
	int adsDelayTime;//0x1E4&lt;br /&gt;
	int spreadOverride;//0x1E8&lt;br /&gt;
	int spreadOverrideState;//0x1EC&lt;br /&gt;
	int weaponSpinLerp;//0x1F0&lt;br /&gt;
	int viewmodelIndex;//0x1F4&lt;br /&gt;
	float viewangles[3];//0x1F8&lt;br /&gt;
	int viewHeightTarget;//0x204&lt;br /&gt;
	float viewHeightCurrent;//0x208&lt;br /&gt;
	int viewHeightLerpTime;//0x20C&lt;br /&gt;
	int viewHeightLerpTarget;//0x210&lt;br /&gt;
	int viewHeightLerpDown;//0x214&lt;br /&gt;
	float viewAngleClampBase[2];//0x218&lt;br /&gt;
	float viewAngleClampRange[2];//0x220&lt;br /&gt;
	int damageEvent;//0x228&lt;br /&gt;
	int damageYaw;//0x22C&lt;br /&gt;
	int damagePitch;//0x230&lt;br /&gt;
	int damageCount;//0x234&lt;br /&gt;
	int health;//0x238&lt;br /&gt;
		char unk8[0xC];//0x23C&lt;br /&gt;
	struct&lt;br /&gt;
	{&lt;br /&gt;
		int weapon;//0x0&lt;br /&gt;
		int renderOptions;//0x4&lt;br /&gt;
		float shootSoundFade;//0x8&lt;br /&gt;
		char unk0[0xD];//0xC&lt;br /&gt;
		char model;//0x19&lt;br /&gt;
		char unk1[0x2]; //0x1A&lt;br /&gt;
	} heldWeapon[0xF];//0x248&lt;br /&gt;
	int ammo[0xF];//0x3EC&lt;br /&gt;
	int ammoClip[0xF];//0x428&lt;br /&gt;
	float proneDirection;//0x464&lt;br /&gt;
	float proneDirectionPitch;//0x468&lt;br /&gt;
	float proneTorsoPitch;//0x46C&lt;br /&gt;
	int viewlocked;//0x470&lt;br /&gt;
	short viewlocked_entNum;//0x474&lt;br /&gt;
	int vehiclePos;//0x478&lt;br /&gt;
	int vehicleType;//0x47C&lt;br /&gt;
	int vehicleAnimBoneIndex;//0x480&lt;br /&gt;
	int linkFlags;//0x484&lt;br /&gt;
		float unk9[3];//0x488&lt;br /&gt;
	int cursorHint;//0x494&lt;br /&gt;
	int cursorHintString;//0x498&lt;br /&gt;
	int cursorHintEntIndex;//0x49C&lt;br /&gt;
	int cursorHintWeapon;//0x4A0&lt;br /&gt;
	int iCompassPlayerInfo;//0x4A4&lt;br /&gt;
	int spyplaneTypeEnabled;//0x4A8&lt;br /&gt;
	int satelliteTypeEnabled;//0x4AC&lt;br /&gt;
	int locationSelectionInfo;//0x4B0&lt;br /&gt;
	int locationSelectionType;//0x4B4&lt;br /&gt;
	SprintState sprintState; //0x4B8&lt;br /&gt;
	float lastDtpEnd;//0x4D4&lt;br /&gt;
	float fTorsoPitch;//0x4D8&lt;br /&gt;
	float fWaistPitch;//0x4DC&lt;br /&gt;
	float holdBreathScale;//0x4E0&lt;br /&gt;
	int holdBreathTimer;//0x4E4&lt;br /&gt;
	int chargeShotTimer;//0x4E8&lt;br /&gt;
	int chargeShotLevel;//0x4EC&lt;br /&gt;
	int shotsFiredFromChamber;//0x4F0&lt;br /&gt;
	float quickScopeScale;//0x4F4&lt;br /&gt;
	int quickScopeTimer;//0x4F8&lt;br /&gt;
	int clientFields;//0x4FC&lt;br /&gt;
	int clientFields2;//0x500&lt;br /&gt;
	int clientFields3;//0x504&lt;br /&gt;
	int entityStateClientFields;//0x508&lt;br /&gt;
	float moveSpeedScaleMultiplier;//0x50C&lt;br /&gt;
	MantleState mantleState;//0x510&lt;br /&gt;
	int vehicleAnimStage;//0x520&lt;br /&gt;
	int vehicleEntryPoint;//0x524&lt;br /&gt;
	int scriptedAnim;//0x528&lt;br /&gt;
		char unk10[4];//0x52C&lt;br /&gt;
	int meleeChargeEnt;//0x530&lt;br /&gt;
	int meleeChargeDist;//0x534&lt;br /&gt;
	int meleeChargeTime;//0x538&lt;br /&gt;
	int weapLockFlags;//0x53C&lt;br /&gt;
	int weapLockedEntnum;//0x540&lt;br /&gt;
		char unk11[4];//0x544&lt;br /&gt;
	int perks[2];//0x548&lt;br /&gt;
	int actionSlotType[4];//0x550&lt;br /&gt;
	int actionSlotParam[4];//0x560&lt;br /&gt;
	int inventoryWeapon;//0x570&lt;br /&gt;
	short wiiumoteAimX;//0x574&lt;br /&gt;
	short wiiumoteAimY;//0x576&lt;br /&gt;
	char wiiuControllerType;//0x578&lt;br /&gt;
	char vehicleDefIndex;//0x579&lt;br /&gt;
	int entityEventSequence;//0x57C&lt;br /&gt;
	int weapAnim;//0x580&lt;br /&gt;
	int weapAnimLeft;//0x584&lt;br /&gt;
	float aimSpreadScale;//0x588&lt;br /&gt;
	int shellshockIndex;//0x58C&lt;br /&gt;
	int shellshockTime;//0x590&lt;br /&gt;
	int shellshockDuration;//0x594&lt;br /&gt;
	float dofNearStart;//0x598&lt;br /&gt;
	float dofNearEnd;//0x59C&lt;br /&gt;
	float dofFarStart;//0x5A0&lt;br /&gt;
	float dofFarEnd;//0x5A4&lt;br /&gt;
	float dofNearBlur;//0x5A8&lt;br /&gt;
	float dofFarBlur;//0x5AC&lt;br /&gt;
	float dofViewmodelStart;//0x5B0&lt;br /&gt;
	float dofViewmodelEnd;//0x5B4&lt;br /&gt;
		char unk12[0xC];//0x5B8&lt;br /&gt;
	int adsZoomSelect;//0x5C4&lt;br /&gt;
		char unk13[4];//0x5C8&lt;br /&gt;
	int adsZoomLatchState;//0x5CC&lt;br /&gt;
	int adsPrevZoomSelect;//0x5D0&lt;br /&gt;
	int adsPrevZoomSelectTime;//0x5D4&lt;br /&gt;
	int artilleryInboundIconLocation;//0x5D8&lt;br /&gt;
	float visionSetLerpRatio;//0x5DC&lt;br /&gt;
	int poisoned;//0x5E0&lt;br /&gt;
	int binocs;//0x5E4&lt;br /&gt;
		char unk14[0x604]; //0x5E8&lt;br /&gt;
	int deltaTime; //0xBEC&lt;br /&gt;
	int killCamEntity; //0xBF0&lt;br /&gt;
	int killCamTargetEntity; //0xBF4&lt;br /&gt;
	int intoShotsFired; //0xBF8&lt;br /&gt;
	struct&lt;br /&gt;
	{&lt;br /&gt;
		hudelem_s current[31]; //0xBFC&lt;br /&gt;
		hudelem_s archival[31]; //0x1AFC&lt;br /&gt;
	};&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct button_t&lt;br /&gt;
{&lt;br /&gt;
	int buttons;&lt;br /&gt;
	int buttons2; // can someone explain this ?&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct usercmd_s&lt;br /&gt;
{&lt;br /&gt;
	int serverTime; //0x0&lt;br /&gt;
	button_t buttons; //0x4&lt;br /&gt;
	int viewangles[3]; //0xC&lt;br /&gt;
	int weapon; // 0x18&lt;br /&gt;
	int offHandIndex; //0x1C&lt;br /&gt;
		char unk1[4]; //0x20&lt;br /&gt;
	signed char forwardmove; //0x24&lt;br /&gt;
	signed char rightmove; //0x25&lt;br /&gt;
	signed char upmove; //0x26&lt;br /&gt;
	signed char forwardlook; //0x27&lt;br /&gt;
	signed char rightlook; //0x28&lt;br /&gt;
	signed char uplook; //0x29&lt;br /&gt;
		char unk2[0x12]; //0x2A&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct playerTeamState_t&lt;br /&gt;
{&lt;br /&gt;
	int location;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct val64&lt;br /&gt;
{&lt;br /&gt;
	int high; //0x0&lt;br /&gt;
	int low; //0x4&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct clientState_s&lt;br /&gt;
{&lt;br /&gt;
	int clientIndex; //0x0&lt;br /&gt;
	team_t team; //0x4&lt;br /&gt;
	team_t ffaTeam; //0x8&lt;br /&gt;
	int modelindex; //0xC&lt;br /&gt;
		char unk0[4]; //0x10&lt;br /&gt;
	int attachModelIndex[6]; //0x14&lt;br /&gt;
	int attachTagIndex[6]; //0x2C&lt;br /&gt;
	char name[0x20]; //0x44&lt;br /&gt;
	float maxSprintTimeMultiplier; //0x64&lt;br /&gt;
	int rank; //0x68&lt;br /&gt;
	int prestige; //0x6C&lt;br /&gt;
	int lastDamageTime; //0x70&lt;br /&gt;
	int lastStandStartTime; //0x74&lt;br /&gt;
	int turnedHumanTime; //0x78&lt;br /&gt;
	int beingRevived; //0x7C&lt;br /&gt;
	val64 xuid64; //0x80&lt;br /&gt;
	val64 leagueTeamID64; //0x88&lt;br /&gt;
	int leagueDivisionID; //0x90&lt;br /&gt;
		char unk1[4]; //0x94&lt;br /&gt;
	val64 leagueSubdivisionID64; //0x98&lt;br /&gt;
	int leagueSubdivisionRank; //0xA0&lt;br /&gt;
	int perks[2]; //0xA4&lt;br /&gt;
	int voiceConnectivityBits; //0xAC&lt;br /&gt;
	char clanAbbrev[8]; //0xB0&lt;br /&gt;
	int attachedVehEntNum; //0xB8&lt;br /&gt;
	int attachedVehSeat; //0xBC&lt;br /&gt;
	int needsRevive; //0xC0&lt;br /&gt;
	int clanAbbrevEV; //0xC4&lt;br /&gt;
	int vehAnimState; //0xC8&lt;br /&gt;
	struct&lt;br /&gt;
	{&lt;br /&gt;
		int ping; //0xCC&lt;br /&gt;
		int status_icon; //0xD0&lt;br /&gt;
		int place; //0xD4&lt;br /&gt;
		int score; //0xD8&lt;br /&gt;
		int kills; //0xDC&lt;br /&gt;
		int assists; //0xE0&lt;br /&gt;
		int deaths; //0xE4&lt;br /&gt;
		int wagerWinnings; //0xE8&lt;br /&gt;
		int scoreboardColumns[5]; //0xEC&lt;br /&gt;
		int downs; //0x100&lt;br /&gt;
		int revives; //0x104&lt;br /&gt;
		int headshots; //0x108&lt;br /&gt;
			char unk2[4]; //0x10C&lt;br /&gt;
		int currentStreak; //0x110&lt;br /&gt;
	}score;&lt;br /&gt;
	int clientUIVisibilityFlags; //0x114&lt;br /&gt;
	int offhandWeaponVisible; //0x118&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct clientSession_t&lt;br /&gt;
{&lt;br /&gt;
	sessionState_t sessionState; //0x0&lt;br /&gt;
	int spectatorClient; //0x4&lt;br /&gt;
	int killcamEntity; //0x8&lt;br /&gt;
	int killcamTargetEntity; //0xC&lt;br /&gt;
	int archiveTime; //0x10&lt;br /&gt;
	unsigned short scriptPersId; //0x14&lt;br /&gt;
	clientConnected_t connected; //0x18&lt;br /&gt;
	usercmd_s cmd; //0x1C&lt;br /&gt;
	usercmd_s oldcmd; // 0x58&lt;br /&gt;
	int localClient; //0x94 not sure&lt;br /&gt;
	int predictItemPickup; //0x98 not sure&lt;br /&gt;
	char newnetname[0x20]; //0x9C&lt;br /&gt;
	int maxHealth; //0xBC&lt;br /&gt;
	int enterTime; //0xC0 not sure&lt;br /&gt;
	playerTeamState_t teamState; //0xC4 not sure&lt;br /&gt;
	int voteCount; //0xC8 not sure&lt;br /&gt;
	int teamVoteCount; //0xCC not sure&lt;br /&gt;
	float moveSpeedScaleMultiplier; //0xD0&lt;br /&gt;
	int viewmodelIndex; //0xD4&lt;br /&gt;
	int noSpectate; //0xD8 not sure&lt;br /&gt;
	int teamInfo; //0xDC not sure&lt;br /&gt;
	clientState_s cs; //0xE0&lt;br /&gt;
		char unk0[4]; //0x1FC&lt;br /&gt;
	int psOffsetTime; //0x200&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct gclient_s&lt;br /&gt;
{&lt;br /&gt;
	playerState_s ps[2]; //0x0&lt;br /&gt;
	clientSession_t sess; //0x5420&lt;br /&gt;
	int _invalid; //0x5624 //not sure&lt;br /&gt;
	int none; //0x5628 //not sure&lt;br /&gt;
	int score; //0x562C&lt;br /&gt;
	int kills; //0x5630&lt;br /&gt;
	int deaths; //0x5634&lt;br /&gt;
	int assists; //0x5638&lt;br /&gt;
	int defends; //0x563C&lt;br /&gt;
	int plants; //0x5640&lt;br /&gt;
	int defuses; //0x5644&lt;br /&gt;
	int returns; //0x5648&lt;br /&gt;
	int captures; //0x564C&lt;br /&gt;
	int destructions; //0x5650&lt;br /&gt;
	int kdration; //0x5654&lt;br /&gt;
	int survived; //0x5658&lt;br /&gt;
	int stabs; //0x565C&lt;br /&gt;
	int tomahawks; //0x5660&lt;br /&gt;
	int humiliated; //0x5664&lt;br /&gt;
	int x2score; //0x5668&lt;br /&gt;
	int headshots; //0x566C&lt;br /&gt;
	int downs; //0x5670&lt;br /&gt;
	int revives; //0x5674&lt;br /&gt;
	int agrkills; //0x5678&lt;br /&gt;
	int hacks; //0x567C&lt;br /&gt;
	int pointstowin; //0x5680&lt;br /&gt;
	int killsconfirmed; //0x5684&lt;br /&gt;
	int killsdenied; //0x5688&lt;br /&gt;
		char unk1[4]; //0x568C&lt;br /&gt;
	int spectatorClient; //0x5690&lt;br /&gt;
	int mFlags; //0x5694&lt;br /&gt;
	int lastCmdTime; //0x5698&lt;br /&gt;
	button_t buttons; //0x569C&lt;br /&gt;
	button_t latchedButtons; //0x56A4&lt;br /&gt;
	button_t buttonsSinceLastFrame; //0x56AC&lt;br /&gt;
	button_t actionSlots; //0x56B4&lt;br /&gt;
	float fGunPitch; //0x56BC&lt;br /&gt;
	float fGunYaw; //0x56C0&lt;br /&gt;
		char unk3[4]; //0x56C4&lt;br /&gt;
	float damage_from[3]; //0x56C8&lt;br /&gt;
		char unk4[4]; //0x56D4&lt;br /&gt;
	int inactivityTime; //0x56D8&lt;br /&gt;
	int inactivityWarning; //0x56DC&lt;br /&gt;
		char unk5[0x2A]; //0x56E0&lt;br /&gt;
	bool linkCollision; //0x570A&lt;br /&gt;
	char linkTag; //0x570B&lt;br /&gt;
	float viewFraction; //0x570C&lt;br /&gt;
		float unk6[4]; //0x5710&lt;br /&gt;
	float topArc; //0x5720&lt;br /&gt;
	float rightArc; //0x5724&lt;br /&gt;
		float unk7[4]; //0x5728&lt;br /&gt;
	float bottomArc; //0x5738&lt;br /&gt;
	float leftArc; //0x573C&lt;br /&gt;
		char unk8[0x18]; //0x5740&lt;br /&gt;
	int useButtonDone; //0x5758&lt;br /&gt;
	int iLastCompassPlayerInfoEnt; //0x575C&lt;br /&gt;
	int compassPingTime; //0x5760&lt;br /&gt;
		char unk9[0x84]; //0x5764&lt;br /&gt;
	int spyplane; //0x57E8&lt;br /&gt;
	int satellite; //0x57EC&lt;br /&gt;
		char unk10[0x10]; //0x57F0&lt;br /&gt;
	int lastStand; //0x5800&lt;br /&gt;
		char unk11[4]; //0x5804&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>Therifboy</name></author>
	</entry>
	<entry>
		<id>https://codresearch.dev/index.php?title=Game_Entity_(BO2)&amp;diff=607</id>
		<title>Game Entity (BO2)</title>
		<link rel="alternate" type="text/html" href="https://codresearch.dev/index.php?title=Game_Entity_(BO2)&amp;diff=607"/>
		<updated>2014-11-20T14:14:51Z</updated>

		<summary type="html">&lt;p&gt;Therifboy: Created page with &amp;quot;Category:Game Structures Category:BO2 &amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt; enum entityType_t { 	ET_GENERAL = 0x0, 	ET_PLAYER = 0x1, 	ET_PLAYER_CORPSE = 0x2, 	ET_ITEM = 0x3, 	E...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Game Structures]]&lt;br /&gt;
[[Category:BO2]]&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
enum entityType_t&lt;br /&gt;
{&lt;br /&gt;
	ET_GENERAL = 0x0,&lt;br /&gt;
	ET_PLAYER = 0x1,&lt;br /&gt;
	ET_PLAYER_CORPSE = 0x2,&lt;br /&gt;
	ET_ITEM = 0x3,&lt;br /&gt;
	ET_MISSILE = 0x4,&lt;br /&gt;
	ET_INVISIBLE = 0x5,&lt;br /&gt;
	ET_SCRIPTMOVER = 0x6,&lt;br /&gt;
	ET_SOUND_BLEND = 0x7,&lt;br /&gt;
	ET_FX = 0x8,&lt;br /&gt;
	ET_LOOP_FX = 0x9,&lt;br /&gt;
	ET_PRIMARY_LIGHT = 0xA,&lt;br /&gt;
	ET_TURRET = 0xB,&lt;br /&gt;
	ET_HELICOPTER = 0xC,&lt;br /&gt;
	ET_PLANE = 0xD,&lt;br /&gt;
	ET_VEHICLE = 0xE,&lt;br /&gt;
	ET_VEHICLE_CORPSE = 0xF,&lt;br /&gt;
	ET_ACTOR = 0x10,&lt;br /&gt;
	ET_ACTOR_SPAWNER = 0x11,&lt;br /&gt;
	ET_ACTOR_CORPSE = 0x12,&lt;br /&gt;
	ET_STREAMER_HINT = 0x13,&lt;br /&gt;
	ET_ZBARRIER = 0x14,&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct trajectory_t&lt;br /&gt;
{&lt;br /&gt;
	char trType; //0x0&lt;br /&gt;
	int trTime; //0x4&lt;br /&gt;
	int trDuration; //0x8&lt;br /&gt;
	vec3_t trBase; //0xC&lt;br /&gt;
	vec3_t trDelta; //0x18&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct LerpEntityStatePlayer&lt;br /&gt;
{&lt;br /&gt;
	float leanf; //0x0&lt;br /&gt;
	int movementDir; //0x4&lt;br /&gt;
	int moveType; //0x8&lt;br /&gt;
	int primaryWeapon; //0xC&lt;br /&gt;
	int stowedWeapon; //0x10&lt;br /&gt;
	int offhandWeapon; //0x14&lt;br /&gt;
	int meleeWeapon; //0x18&lt;br /&gt;
	char meleeWeaponCamo; //0x1C&lt;br /&gt;
	char meleeWeaponModel; //0x1D&lt;br /&gt;
	char vehicleType; //0x1E&lt;br /&gt;
	char vehicleAnimBoneIndex; //0x1F&lt;br /&gt;
	char vehicleSeat; //0x20&lt;br /&gt;
	char stowedWeaponCamo; //0x21&lt;br /&gt;
	char weaponHeat; //0x22&lt;br /&gt;
	char proneLegsAngle; //0x23&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct LerpEntityStateMissile&lt;br /&gt;
{&lt;br /&gt;
	int launchTime; //0x0&lt;br /&gt;
	int parentClientNum; //0x4&lt;br /&gt;
	int fuseTime; //0x8&lt;br /&gt;
	int forcedDud; //0xC&lt;br /&gt;
	int autoDetonateTime; //0x10&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct LerpEntityStateAnonymous&lt;br /&gt;
{&lt;br /&gt;
	int data[8]; //0x0&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct LerpEntityStateLoopFx&lt;br /&gt;
{&lt;br /&gt;
	float cullDist; //0x0&lt;br /&gt;
	int period; //0x4&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct LerpEntityStateTurret&lt;br /&gt;
{&lt;br /&gt;
	float gunAngles[3]; //0x0&lt;br /&gt;
	int ownerNum; //0xC&lt;br /&gt;
	int heatVal; //0x10&lt;br /&gt;
	int overheating; //0x14&lt;br /&gt;
	int pivotOffset; //0x18&lt;br /&gt;
	int flags; //0x1C&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct LerpEntityStateVehicle&lt;br /&gt;
{&lt;br /&gt;
	float steerYaw; //0x0&lt;br /&gt;
	float bodyRoll; //0x4&lt;br /&gt;
	struct&lt;br /&gt;
	{&lt;br /&gt;
		short pitch;&lt;br /&gt;
		short yaw;&lt;br /&gt;
	}gunnerAngles[4]; //0x8&lt;br /&gt;
	short throttle; //0x18&lt;br /&gt;
	short gunPitch; //0x1A&lt;br /&gt;
	short gunYaw; //0x1C&lt;br /&gt;
	char targetRotorSpeed; //0x1E&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct LerpEntityStateActor&lt;br /&gt;
{&lt;br /&gt;
	struct&lt;br /&gt;
	{&lt;br /&gt;
		int actornum;&lt;br /&gt;
	}index; //0x0&lt;br /&gt;
	int species; //0x4&lt;br /&gt;
	int team; //0x8&lt;br /&gt;
	int enemy; //0xC&lt;br /&gt;
	int freeCameraLockOnAllowed; //0x10&lt;br /&gt;
	struct&lt;br /&gt;
	{&lt;br /&gt;
		short fBodyPitch;&lt;br /&gt;
	}proneInfo;//0x14&lt;br /&gt;
	short aiType; //0x16&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct LerpEntityStateScriptMover&lt;br /&gt;
{&lt;br /&gt;
	char attachTagIndex[4]; //0x0&lt;br /&gt;
	int attachedTagIndex; //0x4&lt;br /&gt;
	short attachModelIndex[4]; //0x8&lt;br /&gt;
	short animScriptedAnim; //0x10&lt;br /&gt;
	short attachedEntNum; //0x12&lt;br /&gt;
	int attachedEntTime; //0x14&lt;br /&gt;
	short exploderIndex; //0x18&lt;br /&gt;
		char unk0[2]; //0x1A&lt;br /&gt;
	char flags; //0x1C&lt;br /&gt;
		char unk1[1]; //0x1D&lt;br /&gt;
	short aiType; //0x1E&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct LerpEntityStateZBarrier&lt;br /&gt;
{&lt;br /&gt;
	int barrierTypeIndex; //0x0&lt;br /&gt;
	struct&lt;br /&gt;
	{&lt;br /&gt;
		char flags;&lt;br /&gt;
		char animTime;&lt;br /&gt;
	}pieces[6]; //0x4&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
union LerpEntityStateTypeUnion&lt;br /&gt;
{&lt;br /&gt;
	LerpEntityStatePlayer player;&lt;br /&gt;
	LerpEntityStateMissile missile;&lt;br /&gt;
	LerpEntityStateAnonymous anonymous;&lt;br /&gt;
	LerpEntityStateLoopFx loopFx;&lt;br /&gt;
	LerpEntityStateTurret turret;&lt;br /&gt;
	LerpEntityStateVehicle vehicle;&lt;br /&gt;
	LerpEntityStateActor actor;&lt;br /&gt;
	LerpEntityStateScriptMover scriptMover;&lt;br /&gt;
	LerpEntityStateZBarrier zbarrier;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct LerpEntityState&lt;br /&gt;
{&lt;br /&gt;
	int eFlags; //0x0&lt;br /&gt;
	int eFlags2; //0x4&lt;br /&gt;
	trajectory_t pos;//0x8&lt;br /&gt;
	trajectory_t apos;//0x2C&lt;br /&gt;
	LerpEntityStateTypeUnion u; //0x50&lt;br /&gt;
	short useCount; //0x74&lt;br /&gt;
	short faction; //0x76&lt;br /&gt;
	int clientFields; //0x78  ? might be a struct of size 4&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct entityState_s&lt;br /&gt;
{&lt;br /&gt;
	int number; //0x0&lt;br /&gt;
	LerpEntityState lerp; //0x4&lt;br /&gt;
	int time2; //0x80&lt;br /&gt;
	int loopSoundId; //0x84&lt;br /&gt;
	int solid; //0x88&lt;br /&gt;
	int renderOptions; //0x8C&lt;br /&gt;
	union&lt;br /&gt;
	{&lt;br /&gt;
		struct&lt;br /&gt;
		{&lt;br /&gt;
			int legsAnim; //0x90&lt;br /&gt;
			int torsoAnim; //0x94&lt;br /&gt;
			float fTorsoPitch; //0x98&lt;br /&gt;
			float fWaistPitch; //0x9C&lt;br /&gt;
		}anim;&lt;br /&gt;
		struct&lt;br /&gt;
		{&lt;br /&gt;
			char fov; //0x90&lt;br /&gt;
			char treeId; //0x91&lt;br /&gt;
			char animId; //0x92&lt;br /&gt;
		}moverState;&lt;br /&gt;
		struct&lt;br /&gt;
		{&lt;br /&gt;
			short flags; //0x90&lt;br /&gt;
			char vehicleDefIndex; //0x92&lt;br /&gt;
			char treeId; //0x93&lt;br /&gt;
			short animId; //0x94&lt;br /&gt;
			short attachModelIndex[2]; //0x96&lt;br /&gt;
			char attachTagIndex[2]; //0x9A&lt;br /&gt;
		}vehicleState;&lt;br /&gt;
		struct&lt;br /&gt;
		{&lt;br /&gt;
			short state; //0x90&lt;br /&gt;
			char subState; //0x92&lt;br /&gt;
			float fLeanAmount; //0x94&lt;br /&gt;
			float fAimUpDown; //0x98&lt;br /&gt;
			float fAimLeftRight; //0x9C&lt;br /&gt;
		}animState;&lt;br /&gt;
	}un2; //0x90&lt;br /&gt;
	union&lt;br /&gt;
	{&lt;br /&gt;
		char unk0[4]; //0xA0&lt;br /&gt;
	}un3; //0xA0&lt;br /&gt;
	int partBits[5]; //0xA4&lt;br /&gt;
	int clientLinkInfo; //0xB8&lt;br /&gt;
		char unk1[4]; //0xBC&lt;br /&gt;
	char events[4]; //0xC0&lt;br /&gt;
	int eventParms[4]; //0xC4&lt;br /&gt;
	unsigned int eventParm; //0xD4&lt;br /&gt;
	short eType; //0xD8 entityType_t&lt;br /&gt;
	short groundEntityNum; //0xDA&lt;br /&gt;
	union&lt;br /&gt;
	{&lt;br /&gt;
		char unk2[2]; //0xDC&lt;br /&gt;
	}index; //0xDC&lt;br /&gt;
	short otherEntityNum; //0xDE&lt;br /&gt;
	short attackerEntityNum; //0xE0&lt;br /&gt;
	short enemyModel; //0xE2&lt;br /&gt;
	int weapon; //0xE4&lt;br /&gt;
	int lastStandPrevWeapon; //0xE8&lt;br /&gt;
	unsigned short targetname; //0xEC&lt;br /&gt;
	short loopSoundFade; //0xEE&lt;br /&gt;
	short eventSequence; //0xF0&lt;br /&gt;
	char surfType; //0xF2&lt;br /&gt;
	char clientNum; //0xF3&lt;br /&gt;
	char iHeadIcon; //0xF4&lt;br /&gt;
	char weaponModel; //0xF5&lt;br /&gt;
	union&lt;br /&gt;
	{&lt;br /&gt;
		char hintString; //0xF6&lt;br /&gt;
		char helicopterStage; //0xF6&lt;br /&gt;
		char eventParm2; //0xF6&lt;br /&gt;
	}un1; // 0xF6&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct entityShared_t //creds to aero&lt;br /&gt;
{&lt;br /&gt;
	char linked; //0x0&lt;br /&gt;
	char bmodel; //0x1&lt;br /&gt;
	char svFlags; //0x2&lt;br /&gt;
	char inuse; //0x3&lt;br /&gt;
	int broadcastTime; //0x4&lt;br /&gt;
	float mins[3]; //0x8&lt;br /&gt;
	float maxs[3]; //0x14&lt;br /&gt;
	int contents; //0x20&lt;br /&gt;
	float absmin[3]; //0x24&lt;br /&gt;
 	float absmax[3]; //0x30&lt;br /&gt;
	float currentOrigin[3]; //0x3C&lt;br /&gt;
	float currentAngles[3]; //0x48&lt;br /&gt;
	int ownerNum; //0x54&lt;br /&gt;
	int eventTime; //0x58&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct turretInfo_s&lt;br /&gt;
{&lt;br /&gt;
		char unk0[8]; //0x0&lt;br /&gt;
	int flags; //0x8&lt;br /&gt;
		char unk1[0]; //0xC haven&#039;t looked for the size&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct gentity_s&lt;br /&gt;
{&lt;br /&gt;
	entityState_s s; //0x0&lt;br /&gt;
	entityShared_t r; //0xF8&lt;br /&gt;
	gclient_s* client; //0x154&lt;br /&gt;
		char unk0[8]; //0x158&lt;br /&gt;
	turretInfo_s* pTurretInfo; //0x160&lt;br /&gt;
		char unk1[4]; //0x164&lt;br /&gt;
	scr_vehicle_s *scr_vehicle; //0x168&lt;br /&gt;
	uint16_t model; //0x16C&lt;br /&gt;
	char physicsObject; //0x16E&lt;br /&gt;
	char takedamage; //0x16F&lt;br /&gt;
		char unk2[6]; //0x170&lt;br /&gt;
	uint16_t classname; //0x176&lt;br /&gt;
	uint16_t target; //0x178&lt;br /&gt;
	uint16_t targetname; //0x17A&lt;br /&gt;
	uint16_t script_noteworthy; //0x17C&lt;br /&gt;
		char unk3[6]; //0x17E&lt;br /&gt;
	int spawnflags; //0x184&lt;br /&gt;
	int flags; //0x188&lt;br /&gt;
	int eventTime; //0x18C&lt;br /&gt;
		char unk4[0x18]; //0x190&lt;br /&gt;
	int health; //0x1A8&lt;br /&gt;
	int maxhealth; //0x1AC&lt;br /&gt;
	int dmg; //0x1B0&lt;br /&gt;
		char unk5[0x74]; //0x1B4&lt;br /&gt;
	int count; //0x228&lt;br /&gt;
		char unk6[0x14]; //0x22C&lt;br /&gt;
	int index; //0x240&lt;br /&gt;
	float lerp_to_lighter; //0x244&lt;br /&gt;
	float lerp_to_darker; //0x248&lt;br /&gt;
		char unk7[0xC4]; //0x24C&lt;br /&gt;
	int birthtime; //0x310&lt;br /&gt;
		char unk8[8]; //0x314&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>Therifboy</name></author>
	</entry>
	<entry>
		<id>https://codresearch.dev/index.php?title=Script_Vehicle_(BO2)&amp;diff=606</id>
		<title>Script Vehicle (BO2)</title>
		<link rel="alternate" type="text/html" href="https://codresearch.dev/index.php?title=Script_Vehicle_(BO2)&amp;diff=606"/>
		<updated>2014-11-20T14:04:59Z</updated>

		<summary type="html">&lt;p&gt;Therifboy: Created page with &amp;quot;Category:Game Structures Category:BO2 &amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt; /* scr_vehicle_s-&amp;gt;flags */ /* Haven&amp;#039;t looked for any other flag */ #define HELIHEIGHTLOCK		(1&amp;lt;&amp;lt;1)  s...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Game Structures]]&lt;br /&gt;
[[Category:BO2]]&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
/* scr_vehicle_s-&amp;gt;flags */&lt;br /&gt;
/* Haven&#039;t looked for any other flag */&lt;br /&gt;
#define HELIHEIGHTLOCK		(1&amp;lt;&amp;lt;1)&lt;br /&gt;
&lt;br /&gt;
struct vehicle_physic_t&lt;br /&gt;
{&lt;br /&gt;
	float origin[3]; //0x0&lt;br /&gt;
	float prevOrigin[3]; //0xC&lt;br /&gt;
	float angles[3]; //0x18&lt;br /&gt;
	float prevAngles[3]; //0x24&lt;br /&gt;
	float maxAngleVel[3]; //0x30&lt;br /&gt;
	float yawAccel; //0x3C&lt;br /&gt;
	float yawDecel; //0x40&lt;br /&gt;
	float mins[3]; //0x44&lt;br /&gt;
	float maxs[3]; //0x50&lt;br /&gt;
	float vel[3]; //0x5C&lt;br /&gt;
	float bodyVel[3]; //0x68&lt;br /&gt;
	float rotVel[3]; //0x74&lt;br /&gt;
	float accel[3]; //0x80&lt;br /&gt;
	float maxPitchAngle; //0x8C&lt;br /&gt;
	float maxRollAngle; //0x90&lt;br /&gt;
		char unk0[0x84]; //0x94&lt;br /&gt;
};&lt;br /&gt;
 &lt;br /&gt;
struct VehicleJitter&lt;br /&gt;
{&lt;br /&gt;
	int jitterPeriodMin; //0x0&lt;br /&gt;
	int jitterPeriodMax; //0x4&lt;br /&gt;
	int jitterEndTime; //0x8&lt;br /&gt;
	float jitterOffsetRange[3]; //0xC&lt;br /&gt;
	float jitterDeltaAccel[3]; //0x18&lt;br /&gt;
	float jitterAccel[3]; //0x24&lt;br /&gt;
	float jitterPos[3]; //0x30&lt;br /&gt;
};&lt;br /&gt;
 &lt;br /&gt;
struct scr_vehicle_s&lt;br /&gt;
{&lt;br /&gt;
		char unk0[0x18]; //0x0&lt;br /&gt;
	float pathWidth; //0x18&lt;br /&gt;
		char unk1[4]; //0x1C&lt;br /&gt;
	float pathWidthLookAheadFrac; //0x20&lt;br /&gt;
	float pathDistanceTraveled; //0x24&lt;br /&gt;
	float pathPos[3]; //0x28&lt;br /&gt;
		char unk2[0xC]; //0x34&lt;br /&gt;
	float pathLookPos[3]; //0x40&lt;br /&gt;
		char unk3[0x164]; //0x4C&lt;br /&gt;
	vehicle_physic_t phys; //0x1B0&lt;br /&gt;
	int entnum; //0x2C8&lt;br /&gt;
	short infoIdx; //0x2CC&lt;br /&gt;
	int flags; //0x2D0&lt;br /&gt;
	int team; //0x2D4&lt;br /&gt;
	int flags2; //0x2D8 no idea what this is&lt;br /&gt;
	struct&lt;br /&gt;
	{&lt;br /&gt;
			char unk0[0x24]; //0x2DC&lt;br /&gt;
		float rotScale; //0x300&lt;br /&gt;
	}turret;&lt;br /&gt;
	VehicleJitter jitter; //0x304&lt;br /&gt;
	struct&lt;br /&gt;
	{&lt;br /&gt;
		float hoverRadius; //0x340&lt;br /&gt;
		float hoverSpeed; //0x344&lt;br /&gt;
		float hoverAccel; //0x348&lt;br /&gt;
			char unk0[0x194]; //0x34C&lt;br /&gt;
	}hover;&lt;br /&gt;
 &lt;br /&gt;
	unsigned short lookAtText0; //0x4E0&lt;br /&gt;
	unsigned short lookAtText1; //0x4E2&lt;br /&gt;
	int manualMode; //0x4E4&lt;br /&gt;
	float manualSpeed; //0x4E8&lt;br /&gt;
	float manualAccel; //0x4EC&lt;br /&gt;
	float manualDecel; //0x4F0&lt;br /&gt;
	float speed; //0x4F4&lt;br /&gt;
	float maxSpeed; //0x4F8&lt;br /&gt;
	float maxDragSpeed; //0x4FC&lt;br /&gt;
	float turningAbility; //0x500&lt;br /&gt;
	int hasTarget; //0x504&lt;br /&gt;
	int hasTargetYaw; //0x508&lt;br /&gt;
	int hasGoalYaw; //0x50C&lt;br /&gt;
	int stopAtGoal; //0x510&lt;br /&gt;
	int stopping; //0x514&lt;br /&gt;
	int targetEnt; //0x518&lt;br /&gt;
	int lookAtEnt; //0x51C&lt;br /&gt;
	float targetOrigin[3]; //0x520&lt;br /&gt;
	float targetOffset[3]; //0x52C&lt;br /&gt;
	float targetYaw; //0x538&lt;br /&gt;
	float goalPosition[3]; //0x53C&lt;br /&gt;
	float goalYaw; //0x548&lt;br /&gt;
	float prevGoalYaw; //0x54C&lt;br /&gt;
	float yawOverShoot; //0x550&lt;br /&gt;
		char unk4[0x24]; //0x554&lt;br /&gt;
	int hasDefaultPitch; //0x578&lt;br /&gt;
	float defaultPitch; //0x57C&lt;br /&gt;
		char unk5[0xC4]; //0x580&lt;br /&gt;
	float nearGoalNotifyDist;//0x644&lt;br /&gt;
	float joltDir[2]; //0x648&lt;br /&gt;
	float joltTime; //0x650&lt;br /&gt;
	float joltWave; //0x654&lt;br /&gt;
	float joltSpeed; //0x658&lt;br /&gt;
	float joltDecel; //0x65C&lt;br /&gt;
		char pad[0x1C00]; //0x660&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>Therifboy</name></author>
	</entry>
	<entry>
		<id>https://codresearch.dev/index.php?title=Game_Client_(BO2)&amp;diff=605</id>
		<title>Game Client (BO2)</title>
		<link rel="alternate" type="text/html" href="https://codresearch.dev/index.php?title=Game_Client_(BO2)&amp;diff=605"/>
		<updated>2014-11-20T13:35:56Z</updated>

		<summary type="html">&lt;p&gt;Therifboy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Game Structures]]&lt;br /&gt;
[[Category:BO2]]&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
/* gclient_s-&amp;gt;buttons.buttons */&lt;br /&gt;
#define __jump			0x00200000&lt;br /&gt;
#define __stance		0x00000200&lt;br /&gt;
#define __use			0x04000000&lt;br /&gt;
#define __triangle		0x00000008&lt;br /&gt;
#define __attack		0x80000000&lt;br /&gt;
#define __ads			0x00100000&lt;br /&gt;
#define __prone			0x00800000&lt;br /&gt;
#define __crouch		0x00400000&lt;br /&gt;
#define __frag			0x00020000&lt;br /&gt;
#define __tactical		0x00010000&lt;br /&gt;
#define __melee			0x20000000&lt;br /&gt;
#define __sprint		0x40000000&lt;br /&gt;
&lt;br /&gt;
/* gclient_s-&amp;gt;actionSlots.buttons2 */&lt;br /&gt;
#define __dpadup		0x00040000&lt;br /&gt;
#define __dpaddown		0x00020000&lt;br /&gt;
#define __dpadleft		0x00010000&lt;br /&gt;
#define __dpadright		0x00008000&lt;br /&gt;
&lt;br /&gt;
enum team_t&lt;br /&gt;
{&lt;br /&gt;
	TEAM_FREE = 0x0,&lt;br /&gt;
	TEAM_ALLIES = 0x1,&lt;br /&gt;
	TEAM_AXIS = 0x2,&lt;br /&gt;
	TEAM_THREE = 0x3,&lt;br /&gt;
	TEAM_FOUR = 0x4,&lt;br /&gt;
	TEAM_FIVE = 0x5,&lt;br /&gt;
	TEAM_SIX = 0x6,&lt;br /&gt;
	TEAM_SEVEN = 0x7,&lt;br /&gt;
	TEAM_EIGHT = 0x8,&lt;br /&gt;
	TEAM_MAX = 0x9&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
enum sessionState_t&lt;br /&gt;
{&lt;br /&gt;
	SESS_STATE_PLAYING = 0x0,&lt;br /&gt;
	SESS_STATE_DEAD = 0x1,&lt;br /&gt;
	SESS_STATE_SPECTATOR = 0x2,&lt;br /&gt;
	SESS_STATE_INTERMISSION = 0x3,&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
enum clientConnected_t&lt;br /&gt;
{&lt;br /&gt;
	CON_DISCONNECTED = 0x0,&lt;br /&gt;
	CON_CONNECTING = 0x1,&lt;br /&gt;
	CON_CONNECTED = 0x2,&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct VehicleState&lt;br /&gt;
{&lt;br /&gt;
	float origin[3];//0&lt;br /&gt;
	float angles[3];//0xC&lt;br /&gt;
	float velocity[3];//0x18&lt;br /&gt;
	float angVelocity[3];//0x24&lt;br /&gt;
	float tilt[2];//0x30&lt;br /&gt;
	float tiltVelocity[2];//0x38&lt;br /&gt;
	float targetHeightDelta;//0x40&lt;br /&gt;
	float lastGroundHeight;//0x44&lt;br /&gt;
	int entity;//0x48&lt;br /&gt;
	int flags;//0x4C&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct SprintState&lt;br /&gt;
{&lt;br /&gt;
	int sprintButtonUpRequired;//0x0&lt;br /&gt;
	int sprintDelay;//0x4&lt;br /&gt;
	int lastSprintStart;//0x8&lt;br /&gt;
	int lastSprintEnd;//0xC&lt;br /&gt;
	int sprintStartMaxLength;//0x10&lt;br /&gt;
	int sprintDuration;//0x14&lt;br /&gt;
	int sprintCooldown;//0x18&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct MantleState&lt;br /&gt;
{&lt;br /&gt;
	float yaw; //0x0&lt;br /&gt;
	int timer; //0x4&lt;br /&gt;
	int transIndex; //0x8&lt;br /&gt;
	int flags; //0xC&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct playerState_s&lt;br /&gt;
{&lt;br /&gt;
	int commandTime;//0x0&lt;br /&gt;
	int pm_type;//0x4&lt;br /&gt;
	int bobCycle; //0x8&lt;br /&gt;
	int pm_flags; //0xC&lt;br /&gt;
	long long weapFlags;//0x10&lt;br /&gt;
	int otherFlags;//0x18&lt;br /&gt;
	int pm_time;//0x1C&lt;br /&gt;
	short ownerNum;//0x20&lt;br /&gt;
	short name;//0x22&lt;br /&gt;
	char progress;//0x24&lt;br /&gt;
	vec3_t origin;//0x28&lt;br /&gt;
	vec3_t velocity;//0x34&lt;br /&gt;
	int playerCamEnt; //0x40&lt;br /&gt;
	int playerCamTag; //0x44&lt;br /&gt;
		char unk1[4]; //0x48&lt;br /&gt;
	int weaponTime;//0x4C&lt;br /&gt;
	int weaponDelay;//0x50&lt;br /&gt;
	int weaponTimeLeft;//0x54&lt;br /&gt;
		char unk2[4];//0x58&lt;br /&gt;
	int weaponIdleTime;//0x5C&lt;br /&gt;
	int grenadeTimeLeft;//0x60&lt;br /&gt;
	int throwBackGrenadeOwner;//0x64&lt;br /&gt;
	int throwBackGrenadeTimeLeft;//0x68&lt;br /&gt;
	int weaponRestrictKickTime;//0x6C&lt;br /&gt;
		char unk3[0x14];//0x60&lt;br /&gt;
	bool bThirdPerson;//0x84&lt;br /&gt;
	int foliageSoundTime;//0x88&lt;br /&gt;
	int gravity;//0x8C&lt;br /&gt;
	float leanf;//0x90&lt;br /&gt;
	int speed;//0x94&lt;br /&gt;
	float delta_angles[3];//0x98&lt;br /&gt;
	int groundEntityNum;//0xA4&lt;br /&gt;
	int moverEntityNum;//0xA8&lt;br /&gt;
	int moverTimestamp;//0xAC&lt;br /&gt;
		char unk4[4];//0xB0&lt;br /&gt;
	float vLadderVec[3];//0xB4&lt;br /&gt;
	int jumpTime;//0xC0&lt;br /&gt;
	float jumpOriginZ;//0xC4&lt;br /&gt;
	int slideTime;//0xC8&lt;br /&gt;
	int moveType;//0xCC&lt;br /&gt;
	int legsTimer;//0xD0&lt;br /&gt;
	int torsoTimer;//0xD4&lt;br /&gt;
	int legsAnim;//0xD8&lt;br /&gt;
	int torsoAnim;//0xDC&lt;br /&gt;
		char unk5[4];//0xE0&lt;br /&gt;
	int damageTimer;//0xE4&lt;br /&gt;
	int damageDuration;//0xE8&lt;br /&gt;
	int dmgDirection;//0xEC&lt;br /&gt;
	int dmgType;//0xF0&lt;br /&gt;
	int corpseIndex;//0xF4&lt;br /&gt;
	int movementDir;//0xF8&lt;br /&gt;
	int eFlags;//0xFC&lt;br /&gt;
	int eFlags2;//0x100&lt;br /&gt;
	VehicleState vehicleState;//0x104&lt;br /&gt;
		char unk6[4];//0x154&lt;br /&gt;
	short predictableEventSequence;//0x158&lt;br /&gt;
	short predictableEventSequenceOld;//0x15A&lt;br /&gt;
	int predictableEvents[4];//0x15C&lt;br /&gt;
	int predictableEventParms[4];//0x16C&lt;br /&gt;
	short unpredictableEventSequence; //0x17C&lt;br /&gt;
	short oldUnpredictableEventSequence;//0x17E&lt;br /&gt;
	int unpredictableEvents[4];//0x180&lt;br /&gt;
	int unpredictableEventParms[4];//0x190&lt;br /&gt;
	int clientNum;//0x1A0&lt;br /&gt;
	int offHandWeapon;//0x1A4&lt;br /&gt;
	int offhandSecondary;//0x1A8&lt;br /&gt;
	int offhandPrimary;//0x1AC&lt;br /&gt;
	int renderOptions;//0x1B0&lt;br /&gt;
	int momentum;//0x1B4&lt;br /&gt;
	int weapon;//0x1B8&lt;br /&gt;
	unsigned int lastStandPrevWeapon;//0x1BC&lt;br /&gt;
	int lastWeaponAltModeSwitch;//0x1C0&lt;br /&gt;
	unsigned int stowedWeapon;//0x1C4&lt;br /&gt;
		char unk7[4];//0x1C8&lt;br /&gt;
	unsigned int meleeWeapon;//0x1CC&lt;br /&gt;
	int weaponstate;//0x1D0&lt;br /&gt;
	int weaponstateLeft;//0x1D4&lt;br /&gt;
	unsigned int weaponShotCount;//0x1D8&lt;br /&gt;
	int weaponShotCountLeft;//0x1DC&lt;br /&gt;
	float fWeaponPosFrac;//0x1E0&lt;br /&gt;
	int adsDelayTime;//0x1E4&lt;br /&gt;
	int spreadOverride;//0x1E8&lt;br /&gt;
	int spreadOverrideState;//0x1EC&lt;br /&gt;
	int weaponSpinLerp;//0x1F0&lt;br /&gt;
	int viewmodelIndex;//0x1F4&lt;br /&gt;
	float viewangles[3];//0x1F8&lt;br /&gt;
	int viewHeightTarget;//0x204&lt;br /&gt;
	float viewHeightCurrent;//0x208&lt;br /&gt;
	int viewHeightLerpTime;//0x20C&lt;br /&gt;
	int viewHeightLerpTarget;//0x210&lt;br /&gt;
	int viewHeightLerpDown;//0x214&lt;br /&gt;
	float viewAngleClampBase[2];//0x218&lt;br /&gt;
	float viewAngleClampRange[2];//0x220&lt;br /&gt;
	int damageEvent;//0x228&lt;br /&gt;
	int damageYaw;//0x22C&lt;br /&gt;
	int damagePitch;//0x230&lt;br /&gt;
	int damageCount;//0x234&lt;br /&gt;
	int health;//0x238&lt;br /&gt;
		char unk8[0xC];//0x23C&lt;br /&gt;
	struct&lt;br /&gt;
	{&lt;br /&gt;
		int weapon;//0x0&lt;br /&gt;
		int renderOptions;//0x4&lt;br /&gt;
		float shootSoundFade;//0x8&lt;br /&gt;
		char unk0[0xD];//0xC&lt;br /&gt;
		char model;//0x19&lt;br /&gt;
		char unk1[0x2]; //0x1A&lt;br /&gt;
	} heldWeapon[0xF];//0x248&lt;br /&gt;
	int ammo[0xF];//0x3EC&lt;br /&gt;
	int ammoClip[0xF];//0x428&lt;br /&gt;
	float proneDirection;//0x464&lt;br /&gt;
	float proneDirectionPitch;//0x468&lt;br /&gt;
	float proneTorsoPitch;//0x46C&lt;br /&gt;
	int viewlocked;//0x470&lt;br /&gt;
	short viewlocked_entNum;//0x474&lt;br /&gt;
	int vehiclePos;//0x478&lt;br /&gt;
	int vehicleType;//0x47C&lt;br /&gt;
	int vehicleAnimBoneIndex;//0x480&lt;br /&gt;
	int linkFlags;//0x484&lt;br /&gt;
		float unk9[3];//0x488&lt;br /&gt;
	int cursorHint;//0x494&lt;br /&gt;
	int cursorHintString;//0x498&lt;br /&gt;
	int cursorHintEntIndex;//0x49C&lt;br /&gt;
	int cursorHintWeapon;//0x4A0&lt;br /&gt;
	int iCompassPlayerInfo;//0x4A4&lt;br /&gt;
	int spyplaneTypeEnabled;//0x4A8&lt;br /&gt;
	int satelliteTypeEnabled;//0x4AC&lt;br /&gt;
	int locationSelectionInfo;//0x4B0&lt;br /&gt;
	int locationSelectionType;//0x4B4&lt;br /&gt;
	SprintState sprintState; //0x4B8&lt;br /&gt;
	float lastDtpEnd;//0x4D4&lt;br /&gt;
	float fTorsoPitch;//0x4D8&lt;br /&gt;
	float fWaistPitch;//0x4DC&lt;br /&gt;
	float holdBreathScale;//0x4E0&lt;br /&gt;
	int holdBreathTimer;//0x4E4&lt;br /&gt;
	int chargeShotTimer;//0x4E8&lt;br /&gt;
	int chargeShotLevel;//0x4EC&lt;br /&gt;
	int shotsFiredFromChamber;//0x4F0&lt;br /&gt;
	float quickScopeScale;//0x4F4&lt;br /&gt;
	int quickScopeTimer;//0x4F8&lt;br /&gt;
	int clientFields;//0x4FC&lt;br /&gt;
	int clientFields2;//0x500&lt;br /&gt;
	int clientFields3;//0x504&lt;br /&gt;
	int entityStateClientFields;//0x508&lt;br /&gt;
	float moveSpeedScaleMultiplier;//0x50C&lt;br /&gt;
	MantleState mantleState;//0x510&lt;br /&gt;
	int vehicleAnimStage;//0x520&lt;br /&gt;
	int vehicleEntryPoint;//0x524&lt;br /&gt;
	int scriptedAnim;//0x528&lt;br /&gt;
		char unk10[4];//0x52C&lt;br /&gt;
	int meleeChargeEnt;//0x530&lt;br /&gt;
	int meleeChargeDist;//0x534&lt;br /&gt;
	int meleeChargeTime;//0x538&lt;br /&gt;
	int weapLockFlags;//0x53C&lt;br /&gt;
	int weapLockedEntnum;//0x540&lt;br /&gt;
		char unk11[4];//0x544&lt;br /&gt;
	int perks[2];//0x548&lt;br /&gt;
	int actionSlotType[4];//0x550&lt;br /&gt;
	int actionSlotParam[4];//0x560&lt;br /&gt;
	int inventoryWeapon;//0x570&lt;br /&gt;
	short wiiumoteAimX;//0x574&lt;br /&gt;
	short wiiumoteAimY;//0x576&lt;br /&gt;
	char wiiuControllerType;//0x578&lt;br /&gt;
	char vehicleDefIndex;//0x579&lt;br /&gt;
	int entityEventSequence;//0x57C&lt;br /&gt;
	int weapAnim;//0x580&lt;br /&gt;
	int weapAnimLeft;//0x584&lt;br /&gt;
	float aimSpreadScale;//0x588&lt;br /&gt;
	int shellshockIndex;//0x58C&lt;br /&gt;
	int shellshockTime;//0x590&lt;br /&gt;
	int shellshockDuration;//0x594&lt;br /&gt;
	float dofNearStart;//0x598&lt;br /&gt;
	float dofNearEnd;//0x59C&lt;br /&gt;
	float dofFarStart;//0x5A0&lt;br /&gt;
	float dofFarEnd;//0x5A4&lt;br /&gt;
	float dofNearBlur;//0x5A8&lt;br /&gt;
	float dofFarBlur;//0x5AC&lt;br /&gt;
	float dofViewmodelStart;//0x5B0&lt;br /&gt;
	float dofViewmodelEnd;//0x5B4&lt;br /&gt;
		char unk12[0xC];//0x5B8&lt;br /&gt;
	int adsZoomSelect;//0x5C4&lt;br /&gt;
		char unk13[4];//0x5C8&lt;br /&gt;
	int adsZoomLatchState;//0x5CC&lt;br /&gt;
	int adsPrevZoomSelect;//0x5D0&lt;br /&gt;
	int adsPrevZoomSelectTime;//0x5D4&lt;br /&gt;
	int artilleryInboundIconLocation;//0x5D8&lt;br /&gt;
	float visionSetLerpRatio;//0x5DC&lt;br /&gt;
	int poisoned;//0x5E0&lt;br /&gt;
	int binocs;//0x5E4&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct button_t&lt;br /&gt;
{&lt;br /&gt;
	int buttons;&lt;br /&gt;
	int buttons2; // can someone explain this ?&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct usercmd_s&lt;br /&gt;
{&lt;br /&gt;
	int serverTime; //0x0&lt;br /&gt;
	button_t buttons; //0x4&lt;br /&gt;
	int viewangles[3]; //0xC&lt;br /&gt;
	int weapon; // 0x18&lt;br /&gt;
	int offHandIndex; //0x1C&lt;br /&gt;
		char unk1[4]; //0x20&lt;br /&gt;
	signed char forwardmove; //0x24&lt;br /&gt;
	signed char rightmove; //0x25&lt;br /&gt;
	signed char upmove; //0x26&lt;br /&gt;
	signed char forwardlook; //0x27&lt;br /&gt;
	signed char rightlook; //0x28&lt;br /&gt;
	signed char uplook; //0x29&lt;br /&gt;
		char unk2[0x12]; //0x2A&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct playerTeamState_t&lt;br /&gt;
{&lt;br /&gt;
	int location;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct val64&lt;br /&gt;
{&lt;br /&gt;
	int high; //0x0&lt;br /&gt;
	int low; //0x4&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct clientState_s&lt;br /&gt;
{&lt;br /&gt;
	int clientIndex; //0x0&lt;br /&gt;
	team_t team; //0x4&lt;br /&gt;
	team_t ffaTeam; //0x8&lt;br /&gt;
	int modelindex; //0xC&lt;br /&gt;
		char unk0[4]; //0x10&lt;br /&gt;
	int attachModelIndex[6]; //0x14&lt;br /&gt;
	int attachTagIndex[6]; //0x2C&lt;br /&gt;
	char name[0x20]; //0x44&lt;br /&gt;
	float maxSprintTimeMultiplier; //0x64&lt;br /&gt;
	int rank; //0x68&lt;br /&gt;
	int prestige; //0x6C&lt;br /&gt;
	int lastDamageTime; //0x70&lt;br /&gt;
	int lastStandStartTime; //0x74&lt;br /&gt;
	int turnedHumanTime; //0x78&lt;br /&gt;
	int beingRevived; //0x7C&lt;br /&gt;
	val64 xuid64; //0x80&lt;br /&gt;
	val64 leagueTeamID64; //0x88&lt;br /&gt;
	int leagueDivisionID; //0x90&lt;br /&gt;
		char unk1[4]; //0x94&lt;br /&gt;
	val64 leagueSubdivisionID64; //0x98&lt;br /&gt;
	int leagueSubdivisionRank; //0xA0&lt;br /&gt;
	int perks[2]; //0xA4&lt;br /&gt;
	int voiceConnectivityBits; //0xAC&lt;br /&gt;
	char clanAbbrev[8]; //0xB0&lt;br /&gt;
	int attachedVehEntNum; //0xB8&lt;br /&gt;
	int attachedVehSeat; //0xBC&lt;br /&gt;
	int needsRevive; //0xC0&lt;br /&gt;
	int clanAbbrevEV; //0xC4&lt;br /&gt;
	int vehAnimState; //0xC8&lt;br /&gt;
	struct&lt;br /&gt;
	{&lt;br /&gt;
		int ping; //0xCC&lt;br /&gt;
		int status_icon; //0xD0&lt;br /&gt;
		int place; //0xD4&lt;br /&gt;
		int score; //0xD8&lt;br /&gt;
		int kills; //0xDC&lt;br /&gt;
		int assists; //0xE0&lt;br /&gt;
		int deaths; //0xE4&lt;br /&gt;
		int wagerWinnings; //0xE8&lt;br /&gt;
		int scoreboardColumns[5]; //0xEC&lt;br /&gt;
		int downs; //0x100&lt;br /&gt;
		int revives; //0x104&lt;br /&gt;
		int headshots; //0x108&lt;br /&gt;
			char unk2[4]; //0x10C&lt;br /&gt;
		int currentStreak; //0x110&lt;br /&gt;
	}score;&lt;br /&gt;
	int clientUIVisibilityFlags; //0x114&lt;br /&gt;
	int offhandWeaponVisible; //0x118&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct clientSession_t&lt;br /&gt;
{&lt;br /&gt;
	sessionState_t sessionState; //0x0&lt;br /&gt;
	int spectatorClient; //0x4&lt;br /&gt;
	int killcamEntity; //0x8&lt;br /&gt;
	int killcamTargetEntity; //0xC&lt;br /&gt;
	int archiveTime; //0x10&lt;br /&gt;
	unsigned short scriptPersId; //0x14&lt;br /&gt;
	clientConnected_t connected; //0x18&lt;br /&gt;
	usercmd_s cmd; //0x1C&lt;br /&gt;
	usercmd_s oldcmd; // 0x58&lt;br /&gt;
	int localClient; //0x94 not sure&lt;br /&gt;
	int predictItemPickup; //0x98 not sure&lt;br /&gt;
	char newnetname[0x20]; //0x9C&lt;br /&gt;
	int maxHealth; //0xBC&lt;br /&gt;
	int enterTime; //0xC0 not sure&lt;br /&gt;
	playerTeamState_t teamState; //0xC4 not sure&lt;br /&gt;
	int voteCount; //0xC8 not sure&lt;br /&gt;
	int teamVoteCount; //0xCC not sure&lt;br /&gt;
	float moveSpeedScaleMultiplier; //0xD0&lt;br /&gt;
	int viewmodelIndex; //0xD4&lt;br /&gt;
	int noSpectate; //0xD8 not sure&lt;br /&gt;
	int teamInfo; //0xDC not sure&lt;br /&gt;
	clientState_s cs; //0xE0&lt;br /&gt;
		char unk0[4]; //0x1FC&lt;br /&gt;
	int psOffsetTime; //0x200&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct gclient_s&lt;br /&gt;
{&lt;br /&gt;
	playerState_s ps; //0x0&lt;br /&gt;
		char unk0[0x5420 - sizeof(playerState_s)];&lt;br /&gt;
	clientSession_t sess; //0x5420&lt;br /&gt;
	int _invalid; //0x5624 //not sure&lt;br /&gt;
	int none; //0x5628 //not sure&lt;br /&gt;
	int score; //0x562C&lt;br /&gt;
	int kills; //0x5630&lt;br /&gt;
	int deaths; //0x5634&lt;br /&gt;
	int assists; //0x5638&lt;br /&gt;
	int defends; //0x563C&lt;br /&gt;
	int plants; //0x5640&lt;br /&gt;
	int defuses; //0x5644&lt;br /&gt;
	int returns; //0x5648&lt;br /&gt;
	int captures; //0x564C&lt;br /&gt;
	int destructions; //0x5650&lt;br /&gt;
	int kdration; //0x5654&lt;br /&gt;
	int survived; //0x5658&lt;br /&gt;
	int stabs; //0x565C&lt;br /&gt;
	int tomahawks; //0x5660&lt;br /&gt;
	int humiliated; //0x5664&lt;br /&gt;
	int x2score; //0x5668&lt;br /&gt;
	int headshots; //0x566C&lt;br /&gt;
	int downs; //0x5670&lt;br /&gt;
	int revives; //0x5674&lt;br /&gt;
	int agrkills; //0x5678&lt;br /&gt;
	int hacks; //0x567C&lt;br /&gt;
	int pointstowin; //0x5680&lt;br /&gt;
	int killsconfirmed; //0x5684&lt;br /&gt;
	int killsdenied; //0x5688&lt;br /&gt;
		char unk1[4]; //0x568C&lt;br /&gt;
	int spectatorClient; //0x5690&lt;br /&gt;
	int mFlags; //0x5694&lt;br /&gt;
	int lastCmdTime; //0x5698&lt;br /&gt;
	button_t buttons; //0x569C&lt;br /&gt;
	button_t latchedButtons; //0x56A4&lt;br /&gt;
	button_t buttonsSinceLastFrame; //0x56AC&lt;br /&gt;
	button_t actionSlots; //0x56B4&lt;br /&gt;
	float fGunPitch; //0x56BC&lt;br /&gt;
	float fGunYaw; //0x56C0&lt;br /&gt;
		char unk3[4]; //0x56C4&lt;br /&gt;
	float damage_from[3]; //0x56C8&lt;br /&gt;
		char unk4[4]; //0x56D4&lt;br /&gt;
	int inactivityTime; //0x56D8&lt;br /&gt;
	int inactivityWarning; //0x56DC&lt;br /&gt;
		char unk5[0x2A]; //0x56E0&lt;br /&gt;
	bool linkCollision; //0x570A&lt;br /&gt;
	char linkTag; //0x570B&lt;br /&gt;
	float viewFraction; //0x570C&lt;br /&gt;
		float unk6[4]; //0x5710&lt;br /&gt;
	float topArc; //0x5720&lt;br /&gt;
	float rightArc; //0x5724&lt;br /&gt;
		float unk7[4]; //0x5728&lt;br /&gt;
	float bottomArc; //0x5738&lt;br /&gt;
	float leftArc; //0x573C&lt;br /&gt;
		char unk8[0x18]; //0x5740&lt;br /&gt;
	int useButtonDone; //0x5758&lt;br /&gt;
	int iLastCompassPlayerInfoEnt; //0x575C&lt;br /&gt;
	int compassPingTime; //0x5760&lt;br /&gt;
		char unk9[0x84]; //0x5764&lt;br /&gt;
	int spyplane; //0x57E8&lt;br /&gt;
	int satellite; //0x57EC&lt;br /&gt;
		char unk10[0x10]; //0x57F0&lt;br /&gt;
	int lastStand; //0x5800&lt;br /&gt;
		char unk11[4]; //0x5804&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>Therifboy</name></author>
	</entry>
	<entry>
		<id>https://codresearch.dev/index.php?title=Game_Client_(BO2)&amp;diff=604</id>
		<title>Game Client (BO2)</title>
		<link rel="alternate" type="text/html" href="https://codresearch.dev/index.php?title=Game_Client_(BO2)&amp;diff=604"/>
		<updated>2014-11-20T13:33:32Z</updated>

		<summary type="html">&lt;p&gt;Therifboy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Game Structures]]&lt;br /&gt;
[[Category:BO2]]&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
enum team_t&lt;br /&gt;
{&lt;br /&gt;
	TEAM_FREE = 0x0,&lt;br /&gt;
	TEAM_ALLIES = 0x1,&lt;br /&gt;
	TEAM_AXIS = 0x2,&lt;br /&gt;
	TEAM_THREE = 0x3,&lt;br /&gt;
	TEAM_FOUR = 0x4,&lt;br /&gt;
	TEAM_FIVE = 0x5,&lt;br /&gt;
	TEAM_SIX = 0x6,&lt;br /&gt;
	TEAM_SEVEN = 0x7,&lt;br /&gt;
	TEAM_EIGHT = 0x8,&lt;br /&gt;
	TEAM_MAX = 0x9&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
enum sessionState_t&lt;br /&gt;
{&lt;br /&gt;
	SESS_STATE_PLAYING = 0x0,&lt;br /&gt;
	SESS_STATE_DEAD = 0x1,&lt;br /&gt;
	SESS_STATE_SPECTATOR = 0x2,&lt;br /&gt;
	SESS_STATE_INTERMISSION = 0x3,&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
enum clientConnected_t&lt;br /&gt;
{&lt;br /&gt;
	CON_DISCONNECTED = 0x0,&lt;br /&gt;
	CON_CONNECTING = 0x1,&lt;br /&gt;
	CON_CONNECTED = 0x2,&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct VehicleState&lt;br /&gt;
{&lt;br /&gt;
	float origin[3];//0&lt;br /&gt;
	float angles[3];//0xC&lt;br /&gt;
	float velocity[3];//0x18&lt;br /&gt;
	float angVelocity[3];//0x24&lt;br /&gt;
	float tilt[2];//0x30&lt;br /&gt;
	float tiltVelocity[2];//0x38&lt;br /&gt;
	float targetHeightDelta;//0x40&lt;br /&gt;
	float lastGroundHeight;//0x44&lt;br /&gt;
	int entity;//0x48&lt;br /&gt;
	int flags;//0x4C&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct SprintState&lt;br /&gt;
{&lt;br /&gt;
	int sprintButtonUpRequired;//0x0&lt;br /&gt;
	int sprintDelay;//0x4&lt;br /&gt;
	int lastSprintStart;//0x8&lt;br /&gt;
	int lastSprintEnd;//0xC&lt;br /&gt;
	int sprintStartMaxLength;//0x10&lt;br /&gt;
	int sprintDuration;//0x14&lt;br /&gt;
	int sprintCooldown;//0x18&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct MantleState&lt;br /&gt;
{&lt;br /&gt;
	float yaw; //0x0&lt;br /&gt;
	int timer; //0x4&lt;br /&gt;
	int transIndex; //0x8&lt;br /&gt;
	int flags; //0xC&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct playerState_s&lt;br /&gt;
{&lt;br /&gt;
	int commandTime;//0x0&lt;br /&gt;
	int pm_type;//0x4&lt;br /&gt;
	int bobCycle; //0x8&lt;br /&gt;
	int pm_flags; //0xC&lt;br /&gt;
	long long weapFlags;//0x10&lt;br /&gt;
	int otherFlags;//0x18&lt;br /&gt;
	int pm_time;//0x1C&lt;br /&gt;
	short ownerNum;//0x20&lt;br /&gt;
	short name;//0x22&lt;br /&gt;
	char progress;//0x24&lt;br /&gt;
	vec3_t origin;//0x28&lt;br /&gt;
	vec3_t velocity;//0x34&lt;br /&gt;
	int playerCamEnt; //0x40&lt;br /&gt;
	int playerCamTag; //0x44&lt;br /&gt;
		char unk1[4]; //0x48&lt;br /&gt;
	int weaponTime;//0x4C&lt;br /&gt;
	int weaponDelay;//0x50&lt;br /&gt;
	int weaponTimeLeft;//0x54&lt;br /&gt;
		char unk2[4];//0x58&lt;br /&gt;
	int weaponIdleTime;//0x5C&lt;br /&gt;
	int grenadeTimeLeft;//0x60&lt;br /&gt;
	int throwBackGrenadeOwner;//0x64&lt;br /&gt;
	int throwBackGrenadeTimeLeft;//0x68&lt;br /&gt;
	int weaponRestrictKickTime;//0x6C&lt;br /&gt;
		char unk3[0x14];//0x60&lt;br /&gt;
	bool bThirdPerson;//0x84&lt;br /&gt;
	int foliageSoundTime;//0x88&lt;br /&gt;
	int gravity;//0x8C&lt;br /&gt;
	float leanf;//0x90&lt;br /&gt;
	int speed;//0x94&lt;br /&gt;
	float delta_angles[3];//0x98&lt;br /&gt;
	int groundEntityNum;//0xA4&lt;br /&gt;
	int moverEntityNum;//0xA8&lt;br /&gt;
	int moverTimestamp;//0xAC&lt;br /&gt;
		char unk4[4];//0xB0&lt;br /&gt;
	float vLadderVec[3];//0xB4&lt;br /&gt;
	int jumpTime;//0xC0&lt;br /&gt;
	float jumpOriginZ;//0xC4&lt;br /&gt;
	int slideTime;//0xC8&lt;br /&gt;
	int moveType;//0xCC&lt;br /&gt;
	int legsTimer;//0xD0&lt;br /&gt;
	int torsoTimer;//0xD4&lt;br /&gt;
	int legsAnim;//0xD8&lt;br /&gt;
	int torsoAnim;//0xDC&lt;br /&gt;
		char unk5[4];//0xE0&lt;br /&gt;
	int damageTimer;//0xE4&lt;br /&gt;
	int damageDuration;//0xE8&lt;br /&gt;
	int dmgDirection;//0xEC&lt;br /&gt;
	int dmgType;//0xF0&lt;br /&gt;
	int corpseIndex;//0xF4&lt;br /&gt;
	int movementDir;//0xF8&lt;br /&gt;
	int eFlags;//0xFC&lt;br /&gt;
	int eFlags2;//0x100&lt;br /&gt;
	VehicleState vehicleState;//0x104&lt;br /&gt;
		char unk6[4];//0x154&lt;br /&gt;
	short predictableEventSequence;//0x158&lt;br /&gt;
	short predictableEventSequenceOld;//0x15A&lt;br /&gt;
	int predictableEvents[4];//0x15C&lt;br /&gt;
	int predictableEventParms[4];//0x16C&lt;br /&gt;
	short unpredictableEventSequence; //0x17C&lt;br /&gt;
	short oldUnpredictableEventSequence;//0x17E&lt;br /&gt;
	int unpredictableEvents[4];//0x180&lt;br /&gt;
	int unpredictableEventParms[4];//0x190&lt;br /&gt;
	int clientNum;//0x1A0&lt;br /&gt;
	int offHandWeapon;//0x1A4&lt;br /&gt;
	int offhandSecondary;//0x1A8&lt;br /&gt;
	int offhandPrimary;//0x1AC&lt;br /&gt;
	int renderOptions;//0x1B0&lt;br /&gt;
	int momentum;//0x1B4&lt;br /&gt;
	int weapon;//0x1B8&lt;br /&gt;
	unsigned int lastStandPrevWeapon;//0x1BC&lt;br /&gt;
	int lastWeaponAltModeSwitch;//0x1C0&lt;br /&gt;
	unsigned int stowedWeapon;//0x1C4&lt;br /&gt;
		char unk7[4];//0x1C8&lt;br /&gt;
	unsigned int meleeWeapon;//0x1CC&lt;br /&gt;
	int weaponstate;//0x1D0&lt;br /&gt;
	int weaponstateLeft;//0x1D4&lt;br /&gt;
	unsigned int weaponShotCount;//0x1D8&lt;br /&gt;
	int weaponShotCountLeft;//0x1DC&lt;br /&gt;
	float fWeaponPosFrac;//0x1E0&lt;br /&gt;
	int adsDelayTime;//0x1E4&lt;br /&gt;
	int spreadOverride;//0x1E8&lt;br /&gt;
	int spreadOverrideState;//0x1EC&lt;br /&gt;
	int weaponSpinLerp;//0x1F0&lt;br /&gt;
	int viewmodelIndex;//0x1F4&lt;br /&gt;
	float viewangles[3];//0x1F8&lt;br /&gt;
	int viewHeightTarget;//0x204&lt;br /&gt;
	float viewHeightCurrent;//0x208&lt;br /&gt;
	int viewHeightLerpTime;//0x20C&lt;br /&gt;
	int viewHeightLerpTarget;//0x210&lt;br /&gt;
	int viewHeightLerpDown;//0x214&lt;br /&gt;
	float viewAngleClampBase[2];//0x218&lt;br /&gt;
	float viewAngleClampRange[2];//0x220&lt;br /&gt;
	int damageEvent;//0x228&lt;br /&gt;
	int damageYaw;//0x22C&lt;br /&gt;
	int damagePitch;//0x230&lt;br /&gt;
	int damageCount;//0x234&lt;br /&gt;
	int health;//0x238&lt;br /&gt;
		char unk8[0xC];//0x23C&lt;br /&gt;
	struct&lt;br /&gt;
	{&lt;br /&gt;
		int weapon;//0x0&lt;br /&gt;
		int renderOptions;//0x4&lt;br /&gt;
		float shootSoundFade;//0x8&lt;br /&gt;
		char unk0[0xD];//0xC&lt;br /&gt;
		char model;//0x19&lt;br /&gt;
		char unk1[0x2]; //0x1A&lt;br /&gt;
	} heldWeapon[0xF];//0x248&lt;br /&gt;
	int ammo[0xF];//0x3EC&lt;br /&gt;
	int ammoClip[0xF];//0x428&lt;br /&gt;
	float proneDirection;//0x464&lt;br /&gt;
	float proneDirectionPitch;//0x468&lt;br /&gt;
	float proneTorsoPitch;//0x46C&lt;br /&gt;
	int viewlocked;//0x470&lt;br /&gt;
	short viewlocked_entNum;//0x474&lt;br /&gt;
	int vehiclePos;//0x478&lt;br /&gt;
	int vehicleType;//0x47C&lt;br /&gt;
	int vehicleAnimBoneIndex;//0x480&lt;br /&gt;
	int linkFlags;//0x484&lt;br /&gt;
		float unk9[3];//0x488&lt;br /&gt;
	int cursorHint;//0x494&lt;br /&gt;
	int cursorHintString;//0x498&lt;br /&gt;
	int cursorHintEntIndex;//0x49C&lt;br /&gt;
	int cursorHintWeapon;//0x4A0&lt;br /&gt;
	int iCompassPlayerInfo;//0x4A4&lt;br /&gt;
	int spyplaneTypeEnabled;//0x4A8&lt;br /&gt;
	int satelliteTypeEnabled;//0x4AC&lt;br /&gt;
	int locationSelectionInfo;//0x4B0&lt;br /&gt;
	int locationSelectionType;//0x4B4&lt;br /&gt;
	SprintState sprintState; //0x4B8&lt;br /&gt;
	float lastDtpEnd;//0x4D4&lt;br /&gt;
	float fTorsoPitch;//0x4D8&lt;br /&gt;
	float fWaistPitch;//0x4DC&lt;br /&gt;
	float holdBreathScale;//0x4E0&lt;br /&gt;
	int holdBreathTimer;//0x4E4&lt;br /&gt;
	int chargeShotTimer;//0x4E8&lt;br /&gt;
	int chargeShotLevel;//0x4EC&lt;br /&gt;
	int shotsFiredFromChamber;//0x4F0&lt;br /&gt;
	float quickScopeScale;//0x4F4&lt;br /&gt;
	int quickScopeTimer;//0x4F8&lt;br /&gt;
	int clientFields;//0x4FC&lt;br /&gt;
	int clientFields2;//0x500&lt;br /&gt;
	int clientFields3;//0x504&lt;br /&gt;
	int entityStateClientFields;//0x508&lt;br /&gt;
	float moveSpeedScaleMultiplier;//0x50C&lt;br /&gt;
	MantleState mantleState;//0x510&lt;br /&gt;
	int vehicleAnimStage;//0x520&lt;br /&gt;
	int vehicleEntryPoint;//0x524&lt;br /&gt;
	int scriptedAnim;//0x528&lt;br /&gt;
		char unk10[4];//0x52C&lt;br /&gt;
	int meleeChargeEnt;//0x530&lt;br /&gt;
	int meleeChargeDist;//0x534&lt;br /&gt;
	int meleeChargeTime;//0x538&lt;br /&gt;
	int weapLockFlags;//0x53C&lt;br /&gt;
	int weapLockedEntnum;//0x540&lt;br /&gt;
		char unk11[4];//0x544&lt;br /&gt;
	int perks[2];//0x548&lt;br /&gt;
	int actionSlotType[4];//0x550&lt;br /&gt;
	int actionSlotParam[4];//0x560&lt;br /&gt;
	int inventoryWeapon;//0x570&lt;br /&gt;
	short wiiumoteAimX;//0x574&lt;br /&gt;
	short wiiumoteAimY;//0x576&lt;br /&gt;
	char wiiuControllerType;//0x578&lt;br /&gt;
	char vehicleDefIndex;//0x579&lt;br /&gt;
	int entityEventSequence;//0x57C&lt;br /&gt;
	int weapAnim;//0x580&lt;br /&gt;
	int weapAnimLeft;//0x584&lt;br /&gt;
	float aimSpreadScale;//0x588&lt;br /&gt;
	int shellshockIndex;//0x58C&lt;br /&gt;
	int shellshockTime;//0x590&lt;br /&gt;
	int shellshockDuration;//0x594&lt;br /&gt;
	float dofNearStart;//0x598&lt;br /&gt;
	float dofNearEnd;//0x59C&lt;br /&gt;
	float dofFarStart;//0x5A0&lt;br /&gt;
	float dofFarEnd;//0x5A4&lt;br /&gt;
	float dofNearBlur;//0x5A8&lt;br /&gt;
	float dofFarBlur;//0x5AC&lt;br /&gt;
	float dofViewmodelStart;//0x5B0&lt;br /&gt;
	float dofViewmodelEnd;//0x5B4&lt;br /&gt;
		char unk12[0xC];//0x5B8&lt;br /&gt;
	int adsZoomSelect;//0x5C4&lt;br /&gt;
		char unk13[4];//0x5C8&lt;br /&gt;
	int adsZoomLatchState;//0x5CC&lt;br /&gt;
	int adsPrevZoomSelect;//0x5D0&lt;br /&gt;
	int adsPrevZoomSelectTime;//0x5D4&lt;br /&gt;
	int artilleryInboundIconLocation;//0x5D8&lt;br /&gt;
	float visionSetLerpRatio;//0x5DC&lt;br /&gt;
	int poisoned;//0x5E0&lt;br /&gt;
	int binocs;//0x5E4&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct button_t&lt;br /&gt;
{&lt;br /&gt;
	int buttons;&lt;br /&gt;
	int buttons2; // can someone explain this ?&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct usercmd_s&lt;br /&gt;
{&lt;br /&gt;
	int serverTime; //0x0&lt;br /&gt;
	button_t buttons; //0x4&lt;br /&gt;
	int viewangles[3]; //0xC&lt;br /&gt;
	int weapon; // 0x18&lt;br /&gt;
	int offHandIndex; //0x1C&lt;br /&gt;
		char unk1[4]; //0x20&lt;br /&gt;
	signed char forwardmove; //0x24&lt;br /&gt;
	signed char rightmove; //0x25&lt;br /&gt;
	signed char upmove; //0x26&lt;br /&gt;
	signed char forwardlook; //0x27&lt;br /&gt;
	signed char rightlook; //0x28&lt;br /&gt;
	signed char uplook; //0x29&lt;br /&gt;
		char unk2[0x12]; //0x2A&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct playerTeamState_t&lt;br /&gt;
{&lt;br /&gt;
	int location;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct val64&lt;br /&gt;
{&lt;br /&gt;
	int high; //0x0&lt;br /&gt;
	int low; //0x4&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct clientState_s&lt;br /&gt;
{&lt;br /&gt;
	int clientIndex; //0x0&lt;br /&gt;
	team_t team; //0x4&lt;br /&gt;
	team_t ffaTeam; //0x8&lt;br /&gt;
	int modelindex; //0xC&lt;br /&gt;
		char unk0[4]; //0x10&lt;br /&gt;
	int attachModelIndex[6]; //0x14&lt;br /&gt;
	int attachTagIndex[6]; //0x2C&lt;br /&gt;
	char name[0x20]; //0x44&lt;br /&gt;
	float maxSprintTimeMultiplier; //0x64&lt;br /&gt;
	int rank; //0x68&lt;br /&gt;
	int prestige; //0x6C&lt;br /&gt;
	int lastDamageTime; //0x70&lt;br /&gt;
	int lastStandStartTime; //0x74&lt;br /&gt;
	int turnedHumanTime; //0x78&lt;br /&gt;
	int beingRevived; //0x7C&lt;br /&gt;
	val64 xuid64; //0x80&lt;br /&gt;
	val64 leagueTeamID64; //0x88&lt;br /&gt;
	int leagueDivisionID; //0x90&lt;br /&gt;
		char unk1[4]; //0x94&lt;br /&gt;
	val64 leagueSubdivisionID64; //0x98&lt;br /&gt;
	int leagueSubdivisionRank; //0xA0&lt;br /&gt;
	int perks[2]; //0xA4&lt;br /&gt;
	int voiceConnectivityBits; //0xAC&lt;br /&gt;
	char clanAbbrev[8]; //0xB0&lt;br /&gt;
	int attachedVehEntNum; //0xB8&lt;br /&gt;
	int attachedVehSeat; //0xBC&lt;br /&gt;
	int needsRevive; //0xC0&lt;br /&gt;
	int clanAbbrevEV; //0xC4&lt;br /&gt;
	int vehAnimState; //0xC8&lt;br /&gt;
	struct&lt;br /&gt;
	{&lt;br /&gt;
		int ping; //0xCC&lt;br /&gt;
		int status_icon; //0xD0&lt;br /&gt;
		int place; //0xD4&lt;br /&gt;
		int score; //0xD8&lt;br /&gt;
		int kills; //0xDC&lt;br /&gt;
		int assists; //0xE0&lt;br /&gt;
		int deaths; //0xE4&lt;br /&gt;
		int wagerWinnings; //0xE8&lt;br /&gt;
		int scoreboardColumns[5]; //0xEC&lt;br /&gt;
		int downs; //0x100&lt;br /&gt;
		int revives; //0x104&lt;br /&gt;
		int headshots; //0x108&lt;br /&gt;
			char unk2[4]; //0x10C&lt;br /&gt;
		int currentStreak; //0x110&lt;br /&gt;
	}score;&lt;br /&gt;
	int clientUIVisibilityFlags; //0x114&lt;br /&gt;
	int offhandWeaponVisible; //0x118&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct clientSession_t&lt;br /&gt;
{&lt;br /&gt;
	sessionState_t sessionState; //0x0&lt;br /&gt;
	int spectatorClient; //0x4&lt;br /&gt;
	int killcamEntity; //0x8&lt;br /&gt;
	int killcamTargetEntity; //0xC&lt;br /&gt;
	int archiveTime; //0x10&lt;br /&gt;
	unsigned short scriptPersId; //0x14&lt;br /&gt;
	clientConnected_t connected; //0x18&lt;br /&gt;
	usercmd_s cmd; //0x1C&lt;br /&gt;
	usercmd_s oldcmd; // 0x58&lt;br /&gt;
	int localClient; //0x94 not sure&lt;br /&gt;
	int predictItemPickup; //0x98 not sure&lt;br /&gt;
	char newnetname[0x20]; //0x9C&lt;br /&gt;
	int maxHealth; //0xBC&lt;br /&gt;
	int enterTime; //0xC0 not sure&lt;br /&gt;
	playerTeamState_t teamState; //0xC4 not sure&lt;br /&gt;
	int voteCount; //0xC8 not sure&lt;br /&gt;
	int teamVoteCount; //0xCC not sure&lt;br /&gt;
	float moveSpeedScaleMultiplier; //0xD0&lt;br /&gt;
	int viewmodelIndex; //0xD4&lt;br /&gt;
	int noSpectate; //0xD8 not sure&lt;br /&gt;
	int teamInfo; //0xDC not sure&lt;br /&gt;
	clientState_s cs; //0xE0&lt;br /&gt;
		char unk0[4]; //0x1FC&lt;br /&gt;
	int psOffsetTime; //0x200&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct gclient_s&lt;br /&gt;
{&lt;br /&gt;
	playerState_s ps; //0x0&lt;br /&gt;
		char unk0[0x5420 - sizeof(playerState_s)];&lt;br /&gt;
	clientSession_t sess; //0x5420&lt;br /&gt;
	int _invalid; //0x5624 //not sure&lt;br /&gt;
	int none; //0x5628 //not sure&lt;br /&gt;
	int score; //0x562C&lt;br /&gt;
	int kills; //0x5630&lt;br /&gt;
	int deaths; //0x5634&lt;br /&gt;
	int assists; //0x5638&lt;br /&gt;
	int defends; //0x563C&lt;br /&gt;
	int plants; //0x5640&lt;br /&gt;
	int defuses; //0x5644&lt;br /&gt;
	int returns; //0x5648&lt;br /&gt;
	int captures; //0x564C&lt;br /&gt;
	int destructions; //0x5650&lt;br /&gt;
	int kdration; //0x5654&lt;br /&gt;
	int survived; //0x5658&lt;br /&gt;
	int stabs; //0x565C&lt;br /&gt;
	int tomahawks; //0x5660&lt;br /&gt;
	int humiliated; //0x5664&lt;br /&gt;
	int x2score; //0x5668&lt;br /&gt;
	int headshots; //0x566C&lt;br /&gt;
	int downs; //0x5670&lt;br /&gt;
	int revives; //0x5674&lt;br /&gt;
	int agrkills; //0x5678&lt;br /&gt;
	int hacks; //0x567C&lt;br /&gt;
	int pointstowin; //0x5680&lt;br /&gt;
	int killsconfirmed; //0x5684&lt;br /&gt;
	int killsdenied; //0x5688&lt;br /&gt;
		char unk1[4]; //0x568C&lt;br /&gt;
	int spectatorClient; //0x5690&lt;br /&gt;
	int mFlags; //0x5694&lt;br /&gt;
	int lastCmdTime; //0x5698&lt;br /&gt;
	button_t buttons; //0x569C&lt;br /&gt;
	button_t latchedButtons; //0x56A4&lt;br /&gt;
	button_t buttonsSinceLastFrame; //0x56AC&lt;br /&gt;
	button_t actionSlots; //0x56B4&lt;br /&gt;
	float fGunPitch; //0x56BC&lt;br /&gt;
	float fGunYaw; //0x56C0&lt;br /&gt;
		char unk3[4]; //0x56C4&lt;br /&gt;
	float damage_from[3]; //0x56C8&lt;br /&gt;
		char unk4[4]; //0x56D4&lt;br /&gt;
	int inactivityTime; //0x56D8&lt;br /&gt;
	int inactivityWarning; //0x56DC&lt;br /&gt;
		char unk5[0x2A]; //0x56E0&lt;br /&gt;
	bool linkCollision; //0x570A&lt;br /&gt;
	char linkTag; //0x570B&lt;br /&gt;
	float viewFraction; //0x570C&lt;br /&gt;
		float unk6[4]; //0x5710&lt;br /&gt;
	float topArc; //0x5720&lt;br /&gt;
	float rightArc; //0x5724&lt;br /&gt;
		float unk7[4]; //0x5728&lt;br /&gt;
	float bottomArc; //0x5738&lt;br /&gt;
	float leftArc; //0x573C&lt;br /&gt;
		char unk8[0x18]; //0x5740&lt;br /&gt;
	int useButtonDone; //0x5758&lt;br /&gt;
	int iLastCompassPlayerInfoEnt; //0x575C&lt;br /&gt;
	int compassPingTime; //0x5760&lt;br /&gt;
		char unk9[0x84]; //0x5764&lt;br /&gt;
	int spyplane; //0x57E8&lt;br /&gt;
	int satellite; //0x57EC&lt;br /&gt;
		char unk10[0x10]; //0x57F0&lt;br /&gt;
	int lastStand; //0x5800&lt;br /&gt;
		char unk11[4]; //0x5804&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>Therifboy</name></author>
	</entry>
	<entry>
		<id>https://codresearch.dev/index.php?title=Game_Client_(BO2)&amp;diff=603</id>
		<title>Game Client (BO2)</title>
		<link rel="alternate" type="text/html" href="https://codresearch.dev/index.php?title=Game_Client_(BO2)&amp;diff=603"/>
		<updated>2014-11-20T13:29:16Z</updated>

		<summary type="html">&lt;p&gt;Therifboy: Created page with &amp;quot;Category:Game Structures Category:BO2 &amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt; enum sessionState_t { 	SESS_STATE_PLAYING = 0x0, 	SESS_STATE_DEAD = 0x1, 	SESS_STATE_SPECTATOR = 0x2...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Game Structures]]&lt;br /&gt;
[[Category:BO2]]&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
enum sessionState_t&lt;br /&gt;
{&lt;br /&gt;
	SESS_STATE_PLAYING = 0x0,&lt;br /&gt;
	SESS_STATE_DEAD = 0x1,&lt;br /&gt;
	SESS_STATE_SPECTATOR = 0x2,&lt;br /&gt;
	SESS_STATE_INTERMISSION = 0x3,&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
enum clientConnected_t&lt;br /&gt;
{&lt;br /&gt;
	CON_DISCONNECTED = 0x0,&lt;br /&gt;
	CON_CONNECTING = 0x1,&lt;br /&gt;
	CON_CONNECTED = 0x2,&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct VehicleState&lt;br /&gt;
{&lt;br /&gt;
	float origin[3];//0&lt;br /&gt;
	float angles[3];//0xC&lt;br /&gt;
	float velocity[3];//0x18&lt;br /&gt;
	float angVelocity[3];//0x24&lt;br /&gt;
	float tilt[2];//0x30&lt;br /&gt;
	float tiltVelocity[2];//0x38&lt;br /&gt;
	float targetHeightDelta;//0x40&lt;br /&gt;
	float lastGroundHeight;//0x44&lt;br /&gt;
	int entity;//0x48&lt;br /&gt;
	int flags;//0x4C&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct SprintState&lt;br /&gt;
{&lt;br /&gt;
	int sprintButtonUpRequired;//0x0&lt;br /&gt;
	int sprintDelay;//0x4&lt;br /&gt;
	int lastSprintStart;//0x8&lt;br /&gt;
	int lastSprintEnd;//0xC&lt;br /&gt;
	int sprintStartMaxLength;//0x10&lt;br /&gt;
	int sprintDuration;//0x14&lt;br /&gt;
	int sprintCooldown;//0x18&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct MantleState&lt;br /&gt;
{&lt;br /&gt;
	float yaw; //0x0&lt;br /&gt;
	int timer; //0x4&lt;br /&gt;
	int transIndex; //0x8&lt;br /&gt;
	int flags; //0xC&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct playerState_s&lt;br /&gt;
{&lt;br /&gt;
	int commandTime;//0x0&lt;br /&gt;
	int pm_type;//0x4&lt;br /&gt;
	int bobCycle; //0x8&lt;br /&gt;
	int pm_flags; //0xC&lt;br /&gt;
	long long weapFlags;//0x10&lt;br /&gt;
	int otherFlags;//0x18&lt;br /&gt;
	int pm_time;//0x1C&lt;br /&gt;
	short ownerNum;//0x20&lt;br /&gt;
	short name;//0x22&lt;br /&gt;
	char progress;//0x24&lt;br /&gt;
	vec3_t origin;//0x28&lt;br /&gt;
	vec3_t velocity;//0x34&lt;br /&gt;
	int playerCamEnt; //0x40&lt;br /&gt;
	int playerCamTag; //0x44&lt;br /&gt;
		char unk1[4]; //0x48&lt;br /&gt;
	int weaponTime;//0x4C&lt;br /&gt;
	int weaponDelay;//0x50&lt;br /&gt;
	int weaponTimeLeft;//0x54&lt;br /&gt;
		char unk2[4];//0x58&lt;br /&gt;
	int weaponIdleTime;//0x5C&lt;br /&gt;
	int grenadeTimeLeft;//0x60&lt;br /&gt;
	int throwBackGrenadeOwner;//0x64&lt;br /&gt;
	int throwBackGrenadeTimeLeft;//0x68&lt;br /&gt;
	int weaponRestrictKickTime;//0x6C&lt;br /&gt;
		char unk3[0x14];//0x60&lt;br /&gt;
	bool bThirdPerson;//0x84&lt;br /&gt;
	int foliageSoundTime;//0x88&lt;br /&gt;
	int gravity;//0x8C&lt;br /&gt;
	float leanf;//0x90&lt;br /&gt;
	int speed;//0x94&lt;br /&gt;
	float delta_angles[3];//0x98&lt;br /&gt;
	int groundEntityNum;//0xA4&lt;br /&gt;
	int moverEntityNum;//0xA8&lt;br /&gt;
	int moverTimestamp;//0xAC&lt;br /&gt;
		char unk4[4];//0xB0&lt;br /&gt;
	float vLadderVec[3];//0xB4&lt;br /&gt;
	int jumpTime;//0xC0&lt;br /&gt;
	float jumpOriginZ;//0xC4&lt;br /&gt;
	int slideTime;//0xC8&lt;br /&gt;
	int moveType;//0xCC&lt;br /&gt;
	int legsTimer;//0xD0&lt;br /&gt;
	int torsoTimer;//0xD4&lt;br /&gt;
	int legsAnim;//0xD8&lt;br /&gt;
	int torsoAnim;//0xDC&lt;br /&gt;
		char unk5[4];//0xE0&lt;br /&gt;
	int damageTimer;//0xE4&lt;br /&gt;
	int damageDuration;//0xE8&lt;br /&gt;
	int dmgDirection;//0xEC&lt;br /&gt;
	int dmgType;//0xF0&lt;br /&gt;
	int corpseIndex;//0xF4&lt;br /&gt;
	int movementDir;//0xF8&lt;br /&gt;
	int eFlags;//0xFC&lt;br /&gt;
	int eFlags2;//0x100&lt;br /&gt;
	VehicleState vehicleState;//0x104&lt;br /&gt;
		char unk6[4];//0x154&lt;br /&gt;
	short predictableEventSequence;//0x158&lt;br /&gt;
	short predictableEventSequenceOld;//0x15A&lt;br /&gt;
	int predictableEvents[4];//0x15C&lt;br /&gt;
	int predictableEventParms[4];//0x16C&lt;br /&gt;
	short unpredictableEventSequence; //0x17C&lt;br /&gt;
	short oldUnpredictableEventSequence;//0x17E&lt;br /&gt;
	int unpredictableEvents[4];//0x180&lt;br /&gt;
	int unpredictableEventParms[4];//0x190&lt;br /&gt;
	int clientNum;//0x1A0&lt;br /&gt;
	int offHandWeapon;//0x1A4&lt;br /&gt;
	int offhandSecondary;//0x1A8&lt;br /&gt;
	int offhandPrimary;//0x1AC&lt;br /&gt;
	int renderOptions;//0x1B0&lt;br /&gt;
	int momentum;//0x1B4&lt;br /&gt;
	int weapon;//0x1B8&lt;br /&gt;
	unsigned int lastStandPrevWeapon;//0x1BC&lt;br /&gt;
	int lastWeaponAltModeSwitch;//0x1C0&lt;br /&gt;
	unsigned int stowedWeapon;//0x1C4&lt;br /&gt;
		char unk7[4];//0x1C8&lt;br /&gt;
	unsigned int meleeWeapon;//0x1CC&lt;br /&gt;
	int weaponstate;//0x1D0&lt;br /&gt;
	int weaponstateLeft;//0x1D4&lt;br /&gt;
	unsigned int weaponShotCount;//0x1D8&lt;br /&gt;
	int weaponShotCountLeft;//0x1DC&lt;br /&gt;
	float fWeaponPosFrac;//0x1E0&lt;br /&gt;
	int adsDelayTime;//0x1E4&lt;br /&gt;
	int spreadOverride;//0x1E8&lt;br /&gt;
	int spreadOverrideState;//0x1EC&lt;br /&gt;
	int weaponSpinLerp;//0x1F0&lt;br /&gt;
	int viewmodelIndex;//0x1F4&lt;br /&gt;
	float viewangles[3];//0x1F8&lt;br /&gt;
	int viewHeightTarget;//0x204&lt;br /&gt;
	float viewHeightCurrent;//0x208&lt;br /&gt;
	int viewHeightLerpTime;//0x20C&lt;br /&gt;
	int viewHeightLerpTarget;//0x210&lt;br /&gt;
	int viewHeightLerpDown;//0x214&lt;br /&gt;
	float viewAngleClampBase[2];//0x218&lt;br /&gt;
	float viewAngleClampRange[2];//0x220&lt;br /&gt;
	int damageEvent;//0x228&lt;br /&gt;
	int damageYaw;//0x22C&lt;br /&gt;
	int damagePitch;//0x230&lt;br /&gt;
	int damageCount;//0x234&lt;br /&gt;
	int health;//0x238&lt;br /&gt;
		char unk8[0xC];//0x23C&lt;br /&gt;
	struct&lt;br /&gt;
	{&lt;br /&gt;
		int weapon;//0x0&lt;br /&gt;
		int renderOptions;//0x4&lt;br /&gt;
		float shootSoundFade;//0x8&lt;br /&gt;
		char unk0[0xD];//0xC&lt;br /&gt;
		char model;//0x19&lt;br /&gt;
		char unk1[0x2]; //0x1A&lt;br /&gt;
	} heldWeapon[0xF];//0x248&lt;br /&gt;
	int ammo[0xF];//0x3EC&lt;br /&gt;
	int ammoClip[0xF];//0x428&lt;br /&gt;
	float proneDirection;//0x464&lt;br /&gt;
	float proneDirectionPitch;//0x468&lt;br /&gt;
	float proneTorsoPitch;//0x46C&lt;br /&gt;
	int viewlocked;//0x470&lt;br /&gt;
	short viewlocked_entNum;//0x474&lt;br /&gt;
	int vehiclePos;//0x478&lt;br /&gt;
	int vehicleType;//0x47C&lt;br /&gt;
	int vehicleAnimBoneIndex;//0x480&lt;br /&gt;
	int linkFlags;//0x484&lt;br /&gt;
		float unk9[3];//0x488&lt;br /&gt;
	int cursorHint;//0x494&lt;br /&gt;
	int cursorHintString;//0x498&lt;br /&gt;
	int cursorHintEntIndex;//0x49C&lt;br /&gt;
	int cursorHintWeapon;//0x4A0&lt;br /&gt;
	int iCompassPlayerInfo;//0x4A4&lt;br /&gt;
	int spyplaneTypeEnabled;//0x4A8&lt;br /&gt;
	int satelliteTypeEnabled;//0x4AC&lt;br /&gt;
	int locationSelectionInfo;//0x4B0&lt;br /&gt;
	int locationSelectionType;//0x4B4&lt;br /&gt;
	SprintState sprintState; //0x4B8&lt;br /&gt;
	float lastDtpEnd;//0x4D4&lt;br /&gt;
	float fTorsoPitch;//0x4D8&lt;br /&gt;
	float fWaistPitch;//0x4DC&lt;br /&gt;
	float holdBreathScale;//0x4E0&lt;br /&gt;
	int holdBreathTimer;//0x4E4&lt;br /&gt;
	int chargeShotTimer;//0x4E8&lt;br /&gt;
	int chargeShotLevel;//0x4EC&lt;br /&gt;
	int shotsFiredFromChamber;//0x4F0&lt;br /&gt;
	float quickScopeScale;//0x4F4&lt;br /&gt;
	int quickScopeTimer;//0x4F8&lt;br /&gt;
	int clientFields;//0x4FC&lt;br /&gt;
	int clientFields2;//0x500&lt;br /&gt;
	int clientFields3;//0x504&lt;br /&gt;
	int entityStateClientFields;//0x508&lt;br /&gt;
	float moveSpeedScaleMultiplier;//0x50C&lt;br /&gt;
	MantleState mantleState;//0x510&lt;br /&gt;
	int vehicleAnimStage;//0x520&lt;br /&gt;
	int vehicleEntryPoint;//0x524&lt;br /&gt;
	int scriptedAnim;//0x528&lt;br /&gt;
		char unk10[4];//0x52C&lt;br /&gt;
	int meleeChargeEnt;//0x530&lt;br /&gt;
	int meleeChargeDist;//0x534&lt;br /&gt;
	int meleeChargeTime;//0x538&lt;br /&gt;
	int weapLockFlags;//0x53C&lt;br /&gt;
	int weapLockedEntnum;//0x540&lt;br /&gt;
		char unk11[4];//0x544&lt;br /&gt;
	int perks[2];//0x548&lt;br /&gt;
	int actionSlotType[4];//0x550&lt;br /&gt;
	int actionSlotParam[4];//0x560&lt;br /&gt;
	int inventoryWeapon;//0x570&lt;br /&gt;
	short wiiumoteAimX;//0x574&lt;br /&gt;
	short wiiumoteAimY;//0x576&lt;br /&gt;
	char wiiuControllerType;//0x578&lt;br /&gt;
	char vehicleDefIndex;//0x579&lt;br /&gt;
	int entityEventSequence;//0x57C&lt;br /&gt;
	int weapAnim;//0x580&lt;br /&gt;
	int weapAnimLeft;//0x584&lt;br /&gt;
	float aimSpreadScale;//0x588&lt;br /&gt;
	int shellshockIndex;//0x58C&lt;br /&gt;
	int shellshockTime;//0x590&lt;br /&gt;
	int shellshockDuration;//0x594&lt;br /&gt;
	float dofNearStart;//0x598&lt;br /&gt;
	float dofNearEnd;//0x59C&lt;br /&gt;
	float dofFarStart;//0x5A0&lt;br /&gt;
	float dofFarEnd;//0x5A4&lt;br /&gt;
	float dofNearBlur;//0x5A8&lt;br /&gt;
	float dofFarBlur;//0x5AC&lt;br /&gt;
	float dofViewmodelStart;//0x5B0&lt;br /&gt;
	float dofViewmodelEnd;//0x5B4&lt;br /&gt;
		char unk12[0xC];//0x5B8&lt;br /&gt;
	int adsZoomSelect;//0x5C4&lt;br /&gt;
		char unk13[4];//0x5C8&lt;br /&gt;
	int adsZoomLatchState;//0x5CC&lt;br /&gt;
	int adsPrevZoomSelect;//0x5D0&lt;br /&gt;
	int adsPrevZoomSelectTime;//0x5D4&lt;br /&gt;
	int artilleryInboundIconLocation;//0x5D8&lt;br /&gt;
	float visionSetLerpRatio;//0x5DC&lt;br /&gt;
	int poisoned;//0x5E0&lt;br /&gt;
	int binocs;//0x5E4&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct button_t&lt;br /&gt;
{&lt;br /&gt;
	int buttons;&lt;br /&gt;
	int buttons2; // can someone explain this ?&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct usercmd_s&lt;br /&gt;
{&lt;br /&gt;
	int serverTime; //0x0&lt;br /&gt;
	button_t buttons; //0x4&lt;br /&gt;
	int viewangles[3]; //0xC&lt;br /&gt;
	int weapon; // 0x18&lt;br /&gt;
	int offHandIndex; //0x1C&lt;br /&gt;
		char unk1[4]; //0x20&lt;br /&gt;
	signed char forwardmove; //0x24&lt;br /&gt;
	signed char rightmove; //0x25&lt;br /&gt;
	signed char upmove; //0x26&lt;br /&gt;
	signed char forwardlook; //0x27&lt;br /&gt;
	signed char rightlook; //0x28&lt;br /&gt;
	signed char uplook; //0x29&lt;br /&gt;
		char unk2[0x12]; //0x2A&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct playerTeamState_t&lt;br /&gt;
{&lt;br /&gt;
	int location;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct val64&lt;br /&gt;
{&lt;br /&gt;
	int high; //0x0&lt;br /&gt;
	int low; //0x4&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct clientState_s&lt;br /&gt;
{&lt;br /&gt;
	int clientIndex; //0x0&lt;br /&gt;
	int team; //0x4&lt;br /&gt;
	int ffaTeam; //0x8&lt;br /&gt;
	int modelindex; //0xC&lt;br /&gt;
		char unk0[4]; //0x10&lt;br /&gt;
	int attachModelIndex[6]; //0x14&lt;br /&gt;
	int attachTagIndex[6]; //0x2C&lt;br /&gt;
	char name[0x20]; //0x44&lt;br /&gt;
	float maxSprintTimeMultiplier; //0x64&lt;br /&gt;
	int rank; //0x68&lt;br /&gt;
	int prestige; //0x6C&lt;br /&gt;
	int lastDamageTime; //0x70&lt;br /&gt;
	int lastStandStartTime; //0x74&lt;br /&gt;
	int turnedHumanTime; //0x78&lt;br /&gt;
	int beingRevived; //0x7C&lt;br /&gt;
	val64 xuid64; //0x80&lt;br /&gt;
	val64 leagueTeamID64; //0x88&lt;br /&gt;
	int leagueDivisionID; //0x90&lt;br /&gt;
		char unk1[4]; //0x94&lt;br /&gt;
	val64 leagueSubdivisionID64; //0x98&lt;br /&gt;
	int leagueSubdivisionRank; //0xA0&lt;br /&gt;
	int perks[2]; //0xA4&lt;br /&gt;
	int voiceConnectivityBits; //0xAC&lt;br /&gt;
	char clanAbbrev[8]; //0xB0&lt;br /&gt;
	int attachedVehEntNum; //0xB8&lt;br /&gt;
	int attachedVehSeat; //0xBC&lt;br /&gt;
	int needsRevive; //0xC0&lt;br /&gt;
	int clanAbbrevEV; //0xC4&lt;br /&gt;
	int vehAnimState; //0xC8&lt;br /&gt;
	struct&lt;br /&gt;
	{&lt;br /&gt;
		int ping; //0xCC&lt;br /&gt;
		int status_icon; //0xD0&lt;br /&gt;
		int place; //0xD4&lt;br /&gt;
		int score; //0xD8&lt;br /&gt;
		int kills; //0xDC&lt;br /&gt;
		int assists; //0xE0&lt;br /&gt;
		int deaths; //0xE4&lt;br /&gt;
		int wagerWinnings; //0xE8&lt;br /&gt;
		int scoreboardColumns[5]; //0xEC&lt;br /&gt;
		int downs; //0x100&lt;br /&gt;
		int revives; //0x104&lt;br /&gt;
		int headshots; //0x108&lt;br /&gt;
			char unk2[4]; //0x10C&lt;br /&gt;
		int currentStreak; //0x110&lt;br /&gt;
	}score;&lt;br /&gt;
	int clientUIVisibilityFlags; //0x114&lt;br /&gt;
	int offhandWeaponVisible; //0x118&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct clientSession_t&lt;br /&gt;
{&lt;br /&gt;
	sessionState_t sessionState; //0x0&lt;br /&gt;
	int spectatorClient; //0x4&lt;br /&gt;
	int killcamEntity; //0x8&lt;br /&gt;
	int killcamTargetEntity; //0xC&lt;br /&gt;
	int archiveTime; //0x10&lt;br /&gt;
	unsigned short scriptPersId; //0x14&lt;br /&gt;
	clientConnected_t connected; //0x18&lt;br /&gt;
	usercmd_s cmd; //0x1C&lt;br /&gt;
	usercmd_s oldcmd; // 0x58&lt;br /&gt;
	int localClient; //0x94 not sure&lt;br /&gt;
	int predictItemPickup; //0x98 not sure&lt;br /&gt;
	char newnetname[0x20]; //0x9C&lt;br /&gt;
	int maxHealth; //0xBC&lt;br /&gt;
	int enterTime; //0xC0 not sure&lt;br /&gt;
	playerTeamState_t teamState; //0xC4 not sure&lt;br /&gt;
	int voteCount; //0xC8 not sure&lt;br /&gt;
	int teamVoteCount; //0xCC not sure&lt;br /&gt;
	float moveSpeedScaleMultiplier; //0xD0&lt;br /&gt;
	int viewmodelIndex; //0xD4&lt;br /&gt;
	int noSpectate; //0xD8 not sure&lt;br /&gt;
	int teamInfo; //0xDC not sure&lt;br /&gt;
	clientState_s cs; //0xE0&lt;br /&gt;
		char unk0[4]; //0x1FC&lt;br /&gt;
	int psOffsetTime; //0x200&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct gclient_s&lt;br /&gt;
{&lt;br /&gt;
	playerState_s ps; //0x0&lt;br /&gt;
		char unk0[0x5420 - sizeof(playerState_s)];&lt;br /&gt;
	clientSession_t sess; //0x5420&lt;br /&gt;
	int _invalid; //0x5624 //not sure&lt;br /&gt;
	int none; //0x5628 //not sure&lt;br /&gt;
	int score; //0x562C&lt;br /&gt;
	int kills; //0x5630&lt;br /&gt;
	int deaths; //0x5634&lt;br /&gt;
	int assists; //0x5638&lt;br /&gt;
	int defends; //0x563C&lt;br /&gt;
	int plants; //0x5640&lt;br /&gt;
	int defuses; //0x5644&lt;br /&gt;
	int returns; //0x5648&lt;br /&gt;
	int captures; //0x564C&lt;br /&gt;
	int destructions; //0x5650&lt;br /&gt;
	int kdration; //0x5654&lt;br /&gt;
	int survived; //0x5658&lt;br /&gt;
	int stabs; //0x565C&lt;br /&gt;
	int tomahawks; //0x5660&lt;br /&gt;
	int humiliated; //0x5664&lt;br /&gt;
	int x2score; //0x5668&lt;br /&gt;
	int headshots; //0x566C&lt;br /&gt;
	int downs; //0x5670&lt;br /&gt;
	int revives; //0x5674&lt;br /&gt;
	int agrkills; //0x5678&lt;br /&gt;
	int hacks; //0x567C&lt;br /&gt;
	int pointstowin; //0x5680&lt;br /&gt;
	int killsconfirmed; //0x5684&lt;br /&gt;
	int killsdenied; //0x5688&lt;br /&gt;
		char unk1[4]; //0x568C&lt;br /&gt;
	int spectatorClient; //0x5690&lt;br /&gt;
	int mFlags; //0x5694&lt;br /&gt;
	int lastCmdTime; //0x5698&lt;br /&gt;
	button_t buttons; //0x569C&lt;br /&gt;
	button_t latchedButtons; //0x56A4&lt;br /&gt;
	button_t buttonsSinceLastFrame; //0x56AC&lt;br /&gt;
	button_t actionSlots; //0x56B4&lt;br /&gt;
	float fGunPitch; //0x56BC&lt;br /&gt;
	float fGunYaw; //0x56C0&lt;br /&gt;
		char unk3[4]; //0x56C4&lt;br /&gt;
	float damage_from[3]; //0x56C8&lt;br /&gt;
		char unk4[4]; //0x56D4&lt;br /&gt;
	int inactivityTime; //0x56D8&lt;br /&gt;
	int inactivityWarning; //0x56DC&lt;br /&gt;
		char unk5[0x2A]; //0x56E0&lt;br /&gt;
	bool linkCollision; //0x570A&lt;br /&gt;
	char linkTag; //0x570B&lt;br /&gt;
	float viewFraction; //0x570C&lt;br /&gt;
		float unk6[4]; //0x5710&lt;br /&gt;
	float topArc; //0x5720&lt;br /&gt;
	float rightArc; //0x5724&lt;br /&gt;
		float unk7[4]; //0x5728&lt;br /&gt;
	float bottomArc; //0x5738&lt;br /&gt;
	float leftArc; //0x573C&lt;br /&gt;
		char unk8[0x18]; //0x5740&lt;br /&gt;
	int useButtonDone; //0x5758&lt;br /&gt;
	int iLastCompassPlayerInfoEnt; //0x575C&lt;br /&gt;
	int compassPingTime; //0x5760&lt;br /&gt;
		char unk9[0x84]; //0x5764&lt;br /&gt;
	int spyplane; //0x57E8&lt;br /&gt;
	int satellite; //0x57EC&lt;br /&gt;
		char unk10[0x10]; //0x57F0&lt;br /&gt;
	int lastStand; //0x5800&lt;br /&gt;
		char unk11[4]; //0x5804&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>Therifboy</name></author>
	</entry>
	<entry>
		<id>https://codresearch.dev/index.php?title=ScriptFile_Asset&amp;diff=601</id>
		<title>ScriptFile Asset</title>
		<link rel="alternate" type="text/html" href="https://codresearch.dev/index.php?title=ScriptFile_Asset&amp;diff=601"/>
		<updated>2014-11-16T18:59:19Z</updated>

		<summary type="html">&lt;p&gt;Therifboy: /* Field IDs */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
[[Category:Assets]]&lt;br /&gt;
[[Category:MW3]]&lt;br /&gt;
[[Category:Ghosts]]&lt;br /&gt;
The scriptfile asset is used on Modern Warfare 3, Ghosts, and Advanced Warfare. It is Infinity Ward&#039;s attempt at protecting their game scripts from being modified. Compared to Treyarch&#039;s scriptparsetree, the scriptfile gives away less information on identifying which game script file it originated from. All unnecessary strings have been removed and file names have even been renamed as number id&#039;s.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
struct ScriptFile&lt;br /&gt;
{&lt;br /&gt;
  const char *name;&lt;br /&gt;
  int deflatedLen;&lt;br /&gt;
  int inflatedLen;&lt;br /&gt;
  int codeLen;&lt;br /&gt;
  char *data;&lt;br /&gt;
  char *code;&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
=== Data Section ===&lt;br /&gt;
The data section is a zlib compressed section in which the compressed size is equal to deflatedSize and it&#039;s uncompressed size is equal to inflatedSize.&lt;br /&gt;
&lt;br /&gt;
This section of data is not needed during runtime. Before being executed, the linker runs through the code once and links the data and code section together so that all programs can be ran as one. It contains strings and function call info.&lt;br /&gt;
&lt;br /&gt;
In order to be linked correctly, the code and data section must be read synchronously (e.g. when reading the OP_GetString opcode, the data pointer must be pointing to the string ready to be loaded). The linker does this by incrementing the data pointer each time it reads an opcode that uses it.&lt;br /&gt;
&lt;br /&gt;
At the beginning of each function, the linker loads a 32 bit value, which is the length of the function in the program section. Then it loads a 16 bit value which is the function id. If the id is equal to zero, then it will load a string after it, which is the name of the function. After this, the opcodes may begin to use the data section. The opcodes that use the data section are OP_GetAnimTree, OP_GetString, OP_GetIString, OP_GetAnimation, OP_GetFunction, OP_EvalLevelFieldVariable, OP_EvalAnimFieldVariable, OP_EvalSelfFieldVariable, OP_EvalFieldVariable, OP_EvalLevelFieldVariableRef, OP_EvalAnimFieldVariableRef, OP_EvalSelfFieldVariableRef, OP_EvalFieldVariableRef, OP_ClearFieldVariable, OP_SetLevelFieldVariableField, OP_SetSelfFieldVariableField, all the external call opcodes, and OP_endswitch.&lt;br /&gt;
&lt;br /&gt;
=== Code Section ===&lt;br /&gt;
The code section is the actual compiled game script code. &lt;br /&gt;
== Operation Codes ==&lt;br /&gt;
=== Modern Warfare 3 ===&lt;br /&gt;
==== XBOX &amp;amp; PS3 ====&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#define OP_End					0&lt;br /&gt;
#define OP_Return				1&lt;br /&gt;
#define OP_GetUndefined			2&lt;br /&gt;
#define OP_GetZero				3&lt;br /&gt;
#define OP_GetByte				4&lt;br /&gt;
#define OP_GetAnimTree				5&lt;br /&gt;
#define OP_GetNegByte			6&lt;br /&gt;
#define OP_GetUnsignedShort		7&lt;br /&gt;
#define OP_GetNegUnsignedShort	8&lt;br /&gt;
#define OP_GetInteger			9&lt;br /&gt;
#define OP_GetBuiltinFunction			0xA&lt;br /&gt;
#define OP_GetBuiltinMethod			0xB&lt;br /&gt;
#define OP_GetFloat				0xC&lt;br /&gt;
#define OP_GetString			0xD&lt;br /&gt;
#define OP_GetIString			0xE&lt;br /&gt;
#define OP_GetVector			0xF&lt;br /&gt;
#define OP_GetLevelObject		0x10&lt;br /&gt;
#define OP_GetAnimObject		0x11&lt;br /&gt;
#define OP_GetSelf				0x12&lt;br /&gt;
#define OP_GetThread			0x13&lt;br /&gt;
#define OP_GetLevel				0x14&lt;br /&gt;
#define OP_GetGame				0x15&lt;br /&gt;
#define OP_GetAnim				0x16&lt;br /&gt;
#define OP_GetAnimation			0x17&lt;br /&gt;
#define OP_GetGameRef			0x18&lt;br /&gt;
#define OP_GetMethod			0x19&lt;br /&gt;
#define OP_GetFunction			0x1A&lt;br /&gt;
#define OP_CreateLocalVariable	0x1B&lt;br /&gt;
#define OP_RemoveLocalVariables	0x1C&lt;br /&gt;
#define OP_EvalLocalVariableCached0		0x1D&lt;br /&gt;
#define OP_EvalLocalVariableCached1		0x1E&lt;br /&gt;
#define OP_EvalLocalVariableCached2		0x1F&lt;br /&gt;
#define OP_EvalLocalVariableCached3		0x20&lt;br /&gt;
#define OP_EvalLocalVariableCached4		0x21&lt;br /&gt;
#define OP_EvalLocalVariableCached5		0x22&lt;br /&gt;
#define OP_EvalLocalVariableCached		0x23&lt;br /&gt;
#define OP_EvalLocalArrayCached			0x24&lt;br /&gt;
#define OP_EvalArray					0x25&lt;br /&gt;
#define OP_EvalLocalArrayRefCached0		0x26&lt;br /&gt;
 #define OP_opcode39       				0x27&lt;br /&gt;
#define OP_EvalLocalArrayRefCached		0x28&lt;br /&gt;
#define OP_EvalArrayRef				0x29&lt;br /&gt;
#define OP_ClearArray				0x2A&lt;br /&gt;
#define OP_EmptyArray				0x2B&lt;br /&gt;
 #define OP_opcode44				0x2C&lt;br /&gt;
#define OP_GetSelfObject			0x2D&lt;br /&gt;
#define OP_EvalLevelFieldVariable	0x2E&lt;br /&gt;
#define OP_EvalAnimFieldVariable	0x2F&lt;br /&gt;
#define OP_EvalSelfFieldVariable	0x30&lt;br /&gt;
#define OP_EvalFieldVariable		0x31&lt;br /&gt;
#define OP_EvalLevelFieldVariableRef 	0x32&lt;br /&gt;
#define OP_EvalAnimFieldVariableRef		0x33&lt;br /&gt;
#define OP_EvalSelfFieldVariableRef		0x34&lt;br /&gt;
#define OP_EvalFieldVariableRef			0x35&lt;br /&gt;
#define OP_ClearFieldVariable			0x36&lt;br /&gt;
#define OP_SafeCreateVariableFieldCached	0x37&lt;br /&gt;
#define OP_SafeSetVariableFieldCached0		0x38&lt;br /&gt;
#define OP_SafeSetVariableFieldCached		0x39&lt;br /&gt;
#define OP_SafeSetWaittillVariableFieldCached	0x3A&lt;br /&gt;
#define OP_clearparams				0x3B&lt;br /&gt;
#define OP_checkclearparams			0x3C&lt;br /&gt;
#define OP_EvalLocalVariableRefCached0				0x3D&lt;br /&gt;
// #define OP_opcode62				0x3E	// nop&lt;br /&gt;
#define OP_EvalLocalVariableRefCached	0x3F&lt;br /&gt;
#define OP_SetLevelFieldVariableField	0x40&lt;br /&gt;
#define OP_SetVariableField		0x41&lt;br /&gt;
// #define OP_opcode66			0x42	// nop&lt;br /&gt;
#define OP_SetAnimFieldVariableField	0x43&lt;br /&gt;
#define OP_SetSelfFieldVariableField	0x44&lt;br /&gt;
#define OP_SetLocalVariableFieldCached0		0x45&lt;br /&gt;
#define OP_CreateLocalVariable2		0x46&lt;br /&gt;
#define OP_SetLocalVariableFieldCached		0x47&lt;br /&gt;
 #define OP_opcode72		0x48&lt;br /&gt;
 #define OP_opcode73		0x49&lt;br /&gt;
#define OP_CallBuiltin0		0x4A&lt;br /&gt;
#define OP_CallBuiltin1		0x4B&lt;br /&gt;
#define OP_CallBuiltin2		0x4C&lt;br /&gt;
#define OP_CallBuiltin3		0x4D&lt;br /&gt;
#define OP_CallBuiltin4		0x4E&lt;br /&gt;
#define OP_CallBuiltin5		0x4F&lt;br /&gt;
#define OP_CallBuiltin		0x50&lt;br /&gt;
#define OP_CallBuiltinMethod0	0x51&lt;br /&gt;
#define OP_CallBuiltinMethod1	0x52&lt;br /&gt;
#define OP_CallBuiltinMethod2	0x53&lt;br /&gt;
#define OP_CallBuiltinMethod3	0x54&lt;br /&gt;
#define OP_CallBuiltinMethod4	0x55&lt;br /&gt;
#define OP_CallBuiltinMethod5	0x56&lt;br /&gt;
#define OP_CallBuiltinMethod	0x57&lt;br /&gt;
#define OP_wait					0x58&lt;br /&gt;
#define OP_waittillFrameEnd		0x59&lt;br /&gt;
#define OP_PreScriptCall		0x5A&lt;br /&gt;
#define OP_ScriptFunctionCall2	0x5B&lt;br /&gt;
#define OP_ScriptFunctionCall	0x5C&lt;br /&gt;
#define OP_ScriptMethodCall	0x5D&lt;br /&gt;
#define OP_ScriptThreadCall			0x5E&lt;br /&gt;
#define OP_ScriptThreadCall2	0x5F&lt;br /&gt;
#define OP_ScriptMethodThreadCall			0x60&lt;br /&gt;
#define OP_opcode97			0x61&lt;br /&gt;
#define OP_ScriptFunctionFarCall2		0x62&lt;br /&gt;
#define OP_ScriptFunctionFarCall		0x63&lt;br /&gt;
#define OP_ScriptMethodFarCall	0x64&lt;br /&gt;
#define OP_ScriptThreadFarCall				0x65&lt;br /&gt;
#define OP_opcode102		0x66&lt;br /&gt;
#define OP_ScriptMethodThreadFarCall			0x67&lt;br /&gt;
#define OP_opcode104			0x68&lt;br /&gt;
#define OP_ScriptFunctionCallPointer			0x69&lt;br /&gt;
#define OP_ScriptMethodCallPointer			0x6A&lt;br /&gt;
#define OP_ScriptThreadCallPointer			0x6B&lt;br /&gt;
 #define OP_opcode108			0x6C&lt;br /&gt;
#define OP_ScriptMethodThreadCallPointer			0x6D&lt;br /&gt;
 #define OP_opcode110			0x6E&lt;br /&gt;
 #define OP_opcode111			0x6F&lt;br /&gt;
 #define OP_opcode112			0x70&lt;br /&gt;
#define OP_DecTop			0x71&lt;br /&gt;
#define OP_CastFieldObject			0x72&lt;br /&gt;
#define OP_EvalLocalVariableObjectCached			0x73&lt;br /&gt;
#define OP_CastBool			0x74&lt;br /&gt;
#define OP_BoolNot				0x75&lt;br /&gt;
#define OP_BoolComplement		0x76&lt;br /&gt;
#define OP_JumpOnFalse			0x77&lt;br /&gt;
#define OP_JumpOnTrue			0x78&lt;br /&gt;
#define OP_JumpOnFalseExpr		0x79&lt;br /&gt;
#define OP_JumpOnTrueExpr		0x7A&lt;br /&gt;
#define OP_jump				0x7B&lt;br /&gt;
#define OP_jumpback			0x7C&lt;br /&gt;
#define OP_inc				0x7D&lt;br /&gt;
#define OP_dec				0x7E&lt;br /&gt;
#define OP_bit_or			0x7F&lt;br /&gt;
#define OP_bit_ex_or		0x80&lt;br /&gt;
#define OP_bit_and			0x81&lt;br /&gt;
#define OP_equality			0x82&lt;br /&gt;
#define OP_inequality		0x83&lt;br /&gt;
#define OP_less				0x84&lt;br /&gt;
#define OP_greater			0x85&lt;br /&gt;
#define OP_less_equal		0x86&lt;br /&gt;
#define OP_greater_equal	0x87&lt;br /&gt;
#define OP_shift_left		0x88&lt;br /&gt;
#define OP_shift_right		0x89&lt;br /&gt;
#define OP_plus				0x8A&lt;br /&gt;
#define OP_minus			0x8B&lt;br /&gt;
#define OP_multiply			0x8C&lt;br /&gt;
#define OP_divide			0x8F&lt;br /&gt;
#define OP_mod				0x8E&lt;br /&gt;
#define OP_size				0x8F&lt;br /&gt;
#define OP_waittillmatch		0x90&lt;br /&gt;
#define OP_NOP				0x91&lt;br /&gt;
#define OP_waittill			0x92&lt;br /&gt;
#define OP_notify			0x93&lt;br /&gt;
#define OP_endon			0x94&lt;br /&gt;
#define OP_voidCodepos		0x95&lt;br /&gt;
#define OP_switch			0x96&lt;br /&gt;
#define OP_endswitch		0x97&lt;br /&gt;
#define OP_vector			0x98&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== PC ====&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#define OP_End	0x0&lt;br /&gt;
#define OP_Return	0x1&lt;br /&gt;
#define OP_GetByte	0x2&lt;br /&gt;
#define OP_GetNegByte	0x3&lt;br /&gt;
#define OP_GetUnsignedShort	0x4&lt;br /&gt;
#define OP_GetNegUnsignedShort	0x5&lt;br /&gt;
#define OP_GetInteger	0x6&lt;br /&gt;
#define OP_GetBuiltinFunction	0x7&lt;br /&gt;
#define OP_GetBuiltinMethod	0x8&lt;br /&gt;
#define OP_GetFloat	0x9&lt;br /&gt;
#define OP_GetString	0xA&lt;br /&gt;
#define OP_GetUndefined	0xB&lt;br /&gt;
#define OP_GetZero	0xC&lt;br /&gt;
#define OP_waittillFrameEnd		0xD&lt;br /&gt;
#define OP_CreateLocalVariable	0xE&lt;br /&gt;
#define OP_RemoveLocalVariables	0xF&lt;br /&gt;
#define OP_EvalLocalVariableCached0	0x10&lt;br /&gt;
#define OP_EvalLocalVariableCached1	0x11&lt;br /&gt;
#define OP_EvalLocalVariableCached2	0x12&lt;br /&gt;
#define OP_EvalLocalVariableCached3	0x13&lt;br /&gt;
#define OP_EvalLocalVariableCached4	0x14&lt;br /&gt;
#define OP_EvalLocalVariableCached5	0x15&lt;br /&gt;
#define OP_EvalLocalVariableCached	0x16&lt;br /&gt;
#define OP_EvalLocalArrayCached	0x17&lt;br /&gt;
#define OP_EvalArray	0x18&lt;br /&gt;
#define OP_opcode39	0x19&lt;br /&gt;
#define OP_EvalLocalArrayRefCached0	0x1A&lt;br /&gt;
#define OP_EvalLocalArrayRefCached	0x1B&lt;br /&gt;
#define OP_EvalArrayRef	0x1C&lt;br /&gt;
#define OP_ClearArray	0x1D&lt;br /&gt;
#define OP_EmptyArray	0x1E&lt;br /&gt;
 #define OP_opcode44	0x1F&lt;br /&gt;
#define OP_PreScriptCall	0x20&lt;br /&gt;
#define OP_ScriptFunctionCall2	0x21&lt;br /&gt;
#define OP_ScriptFunctionCall	0x22&lt;br /&gt;
#define OP_ScriptMethodCall	0x23&lt;br /&gt;
#define OP_ScriptThreadCall	0x24&lt;br /&gt;
#define OP_ScriptThreadCall2	0x25&lt;br /&gt;
#define OP_ScriptMethodThreadCall	0x26&lt;br /&gt;
 #define OP_opcode97	0x27&lt;br /&gt;
#define OP_ScriptFunctionFarCall2	0x28&lt;br /&gt;
#define OP_ScriptFunctionFarCall	0x29&lt;br /&gt;
#define OP_ScriptMethodFarCall	0x2A&lt;br /&gt;
#define OP_ScriptThreadFarCall	0x2B&lt;br /&gt;
 #define OP_opcode102	0x2C&lt;br /&gt;
#define OP_ScriptMethodThreadFarCall	0x2D&lt;br /&gt;
 #define OP_opcode104	0x2E&lt;br /&gt;
#define OP_ScriptFunctionCallPointer	0x2F&lt;br /&gt;
#define OP_ScriptMethodCallPointer		0x30&lt;br /&gt;
#define OP_ScriptThreadCallPointer		0x31&lt;br /&gt;
 #define OP_opcode108					0x32&lt;br /&gt;
#define OP_ScriptMethodThreadCallPointer	0x33&lt;br /&gt;
#define OP_opcode110	0x34&lt;br /&gt;
#define OP_opcode111	0x35&lt;br /&gt;
#define OP_opcode112	0x36&lt;br /&gt;
#define OP_GetIString	0x37&lt;br /&gt;
#define OP_GetVector	0x38&lt;br /&gt;
#define OP_GetLevelObject	0x39&lt;br /&gt;
#define OP_GetAnimObject	0x3A&lt;br /&gt;
#define OP_GetSelf	0x3B&lt;br /&gt;
#define OP_GetThread	0x3C&lt;br /&gt;
#define OP_GetLevel	0x3D&lt;br /&gt;
#define OP_GetGame	0x3E&lt;br /&gt;
#define OP_GetAnim	0x3F&lt;br /&gt;
#define OP_GetAnimation	0x40&lt;br /&gt;
#define OP_GetGameRef	0x41&lt;br /&gt;
#define OP_inc	0x42&lt;br /&gt;
#define OP_dec	0x43&lt;br /&gt;
#define OP_bit_or	0x44&lt;br /&gt;
#define OP_JumpOnFalseExpr	0x45&lt;br /&gt;
#define OP_bit_ex_or	0x46&lt;br /&gt;
#define OP_bit_and	0x47&lt;br /&gt;
#define OP_equality	0x48&lt;br /&gt;
#define OP_inequality	0x49&lt;br /&gt;
#define OP_less	0x4A&lt;br /&gt;
#define OP_greater	0x4B&lt;br /&gt;
#define OP_JumpOnTrueExpr	0x4C&lt;br /&gt;
#define OP_less_equal	0x4D&lt;br /&gt;
#define OP_jumpback	0x4E&lt;br /&gt;
#define OP_NOP		0x4F&lt;br /&gt;
#define OP_waittill	0x50&lt;br /&gt;
#define OP_notify	0x51&lt;br /&gt;
#define OP_endon	0x52&lt;br /&gt;
#define OP_voidCodepos	0x53&lt;br /&gt;
#define OP_switch	0x54&lt;br /&gt;
#define OP_endswitch	0x55&lt;br /&gt;
#define OP_vector	0x56&lt;br /&gt;
#define OP_JumpOnFalse	0x57&lt;br /&gt;
#define OP_greater_equal	0x58&lt;br /&gt;
#define OP_shift_left	0x59&lt;br /&gt;
#define OP_shift_right	0x5A&lt;br /&gt;
#define OP_plus	0x5B&lt;br /&gt;
#define OP_jump	0x5C&lt;br /&gt;
#define OP_minus	0x5D&lt;br /&gt;
#define OP_multiply	0x5E&lt;br /&gt;
#define OP_divide	0x5F&lt;br /&gt;
#define OP_mod	0x60&lt;br /&gt;
#define OP_JumpOnTrue	0x61&lt;br /&gt;
#define OP_size	0x62&lt;br /&gt;
#define OP_waittillmatch	0x63&lt;br /&gt;
#define OP_GetMethod	0x64&lt;br /&gt;
#define OP_GetFunction	0x65&lt;br /&gt;
#define OP_GetSelfObject	0x66&lt;br /&gt;
#define OP_EvalLevelFieldVariable	0x67&lt;br /&gt;
#define OP_EvalAnimFieldVariable	0x68&lt;br /&gt;
#define OP_EvalSelfFieldVariable	0x69&lt;br /&gt;
#define OP_EvalFieldVariable	0x6A&lt;br /&gt;
#define OP_EvalLevelFieldVariableRef	0x6B&lt;br /&gt;
#define OP_EvalAnimFieldVariableRef	0x6C&lt;br /&gt;
#define OP_EvalSelfFieldVariableRef	0x6D&lt;br /&gt;
#define OP_EvalFieldVariableRef	0x6E&lt;br /&gt;
#define OP_ClearFieldVariable	0x6F&lt;br /&gt;
#define OP_SafeCreateVariableFieldCached	0x70&lt;br /&gt;
#define OP_SafeSetVariableFieldCached0	0x71&lt;br /&gt;
#define OP_SafeSetVariableFieldCached		0x72&lt;br /&gt;
#define OP_SafeSetWaittillVariableFieldCached	0x73&lt;br /&gt;
#define OP_GetAnimTree	0x74&lt;br /&gt;
#define OP_clearparams	0x75&lt;br /&gt;
#define OP_checkclearparams				0x76&lt;br /&gt;
#define OP_EvalLocalVariableRefCached0	0x77&lt;br /&gt;
	// nop&lt;br /&gt;
#define OP_EvalLocalVariableRefCached	0x79&lt;br /&gt;
#define OP_SetLevelFieldVariableField	0x7A&lt;br /&gt;
#define OP_SetVariableField				0x7B&lt;br /&gt;
	// nop&lt;br /&gt;
#define OP_SetAnimFieldVariableField	0x7D&lt;br /&gt;
#define OP_SetSelfFieldVariableField	0x7E&lt;br /&gt;
#define OP_SetLocalVariableFieldCached0	0x7F&lt;br /&gt;
#define OP_CreateLocalVariable2		0x80&lt;br /&gt;
#define OP_SetLocalVariableFieldCached	0x81&lt;br /&gt;
 #define OP_opcode72		0x82&lt;br /&gt;
 #define OP_opcode73		0x83&lt;br /&gt;
#define OP_CallBuiltin0	0x84&lt;br /&gt;
#define OP_CallBuiltin1	0x85&lt;br /&gt;
#define OP_CallBuiltin2	0x86&lt;br /&gt;
#define OP_CallBuiltin3	0x87&lt;br /&gt;
#define OP_CallBuiltin4	0x88&lt;br /&gt;
#define OP_CallBuiltin5	0x89&lt;br /&gt;
#define OP_CallBuiltin	0x8A&lt;br /&gt;
#define OP_CallBuiltinMethod0	0x8B&lt;br /&gt;
#define OP_CallBuiltinMethod1	0x8C&lt;br /&gt;
#define OP_CallBuiltinMethod2	0x8D&lt;br /&gt;
#define OP_CallBuiltinMethod3	0x8E&lt;br /&gt;
#define OP_CallBuiltinMethod4	0x8F&lt;br /&gt;
#define OP_CallBuiltinMethod5	0x90&lt;br /&gt;
#define OP_CallBuiltinMethod	0x91&lt;br /&gt;
#define OP_wait		0x92&lt;br /&gt;
#define OP_DecTop	0x93&lt;br /&gt;
#define OP_CastFieldObject	0x94&lt;br /&gt;
#define OP_EvalLocalVariableObjectCached 0x95&lt;br /&gt;
#define OP_CastBool	0x96&lt;br /&gt;
#define OP_BoolNot	0x97&lt;br /&gt;
#define OP_BoolComplement 0x98&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Ghosts ===&lt;br /&gt;
The opcodes for Ghosts do the exact same thing as the Modern Warfare 3 opcodes, only their values seem to be scrambled in some way.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#define OP_CastFieldObject			0x1D&lt;br /&gt;
#define OP_SetLocalVariableFieldCached	0x1E&lt;br /&gt;
#define OP_plus				0x1F&lt;br /&gt;
#define OP_RemoveLocalVariables		0x20&lt;br /&gt;
#define OP_EvalSelfFieldVariableRef	0x21&lt;br /&gt;
#define OP_opcode104	0x22&lt;br /&gt;
#define OP_GetGameRef			0x23&lt;br /&gt;
#define OP_EvalAnimFieldVariable	0x24&lt;br /&gt;
#define OP_EvalLevelFieldVariableRef	0x25&lt;br /&gt;
#define OP_GetThread		0x26&lt;br /&gt;
#define OP_greater		0x27&lt;br /&gt;
#define OP_waittillmatch	0x28&lt;br /&gt;
#define OP_shift_right		0x29&lt;br /&gt;
#define OP_dec			0x2A&lt;br /&gt;
#define OP_JumpOnTrue	0x2B&lt;br /&gt;
#define OP_bit_or	0x2C&lt;br /&gt;
#define OP_equality	0x2D&lt;br /&gt;
#define OP_opcode73	0x2E&lt;br /&gt;
#define OP_notify	0x2F&lt;br /&gt;
#define OP_GetVector	0x30&lt;br /&gt;
#define OP_opcode110	0x31&lt;br /&gt;
#define OP_voidCodepos	0x32&lt;br /&gt;
#define OP_GetByte	0x33&lt;br /&gt;
#define OP_ScriptMethodThreadFarCall		0x34&lt;br /&gt;
#define OP_SetSelfFieldVariableField	0x35&lt;br /&gt;
#define OP_JumpOnFalseExpr		0x36&lt;br /&gt;
#define OP_GetUndefined		0x37&lt;br /&gt;
#define OP_jumpback		0x38&lt;br /&gt;
#define OP_JumpOnTrueExpr	0x39&lt;br /&gt;
#define OP_CallBuiltin0		0x3A&lt;br /&gt;
#define OP_CallBuiltin1		0x3B&lt;br /&gt;
#define OP_CallBuiltin2		0x3C&lt;br /&gt;
#define OP_CallBuiltin3		0x3D&lt;br /&gt;
#define OP_CallBuiltin4		0x3E&lt;br /&gt;
#define OP_CallBuiltin5		0x3F&lt;br /&gt;
#define OP_CallBuiltin		0x40&lt;br /&gt;
#define OP_SetLocalVariableFieldCached0		0x41&lt;br /&gt;
#define OP_ClearFieldVariable	0x42&lt;br /&gt;
#define OP_GetLevel		0x43&lt;br /&gt;
#define OP_size			0x44&lt;br /&gt;
#define OP_SafeSetWaittillVariableFieldCached	0x45&lt;br /&gt;
#define OP_ScriptThreadCall			0x46&lt;br /&gt;
#define OP_opcode44			0x47&lt;br /&gt;
#define OP_endon			0x48&lt;br /&gt;
#define OP_EvalFieldVariable		0x49&lt;br /&gt;
#define OP_shift_left			0x4A&lt;br /&gt;
#define OP_EvalLocalArrayRefCached0	0x4B&lt;br /&gt;
#define OP_Return			0x4C&lt;br /&gt;
#define OP_CreateLocalVariable		0x4D&lt;br /&gt;
#define OP_SafeSetVariableFieldCached0	0x4E&lt;br /&gt;
#define OP_GetBuiltinFunction		0x4F&lt;br /&gt;
#define OP_ScriptMethodCall	0x50&lt;br /&gt;
#define OP_opcode112			0x51&lt;br /&gt;
#define OP_ScriptThreadCall2		0x52&lt;br /&gt;
#define OP_GetSelfObject		0x53&lt;br /&gt;
#define OP_GetGame			0x54&lt;br /&gt;
#define OP_SetLevelFieldVariableField	0x55&lt;br /&gt;
#define OP_EvalArray			0x56&lt;br /&gt;
#define OP_GetSelf			0x57&lt;br /&gt;
#define OP_End				0x58&lt;br /&gt;
#define OP_EvalSelfFieldVariable	0x59&lt;br /&gt;
#define OP_less_equal			0x5A&lt;br /&gt;
#define OP_EvalLocalVariableCached0	0x5B&lt;br /&gt;
#define OP_EvalLocalVariableCached1	0x5C&lt;br /&gt;
#define OP_EvalLocalVariableCached2	0x5D&lt;br /&gt;
#define OP_EvalLocalVariableCached3	0x5E&lt;br /&gt;
#define OP_EvalLocalVariableCached4	0x5F&lt;br /&gt;
#define OP_EvalLocalVariableCached5	0x60&lt;br /&gt;
#define OP_EvalLocalVariableCached	0x61&lt;br /&gt;
#define OP_opcode39		0x62&lt;br /&gt;
#define OP_opcode108		0x63&lt;br /&gt;
#define OP_EvalLocalVariableObjectCached		0x64&lt;br /&gt;
#define OP_ScriptMethodThreadCall	0x65&lt;br /&gt;
#define OP_GetInteger		0x66&lt;br /&gt;
#define OP_ScriptMethodCallPointer		0x67&lt;br /&gt;
#define OP_checkclearparams	0x68&lt;br /&gt;
#define OP_SetAnimFieldVariableField	0x69&lt;br /&gt;
// nop&lt;br /&gt;
#define OP_minus  0x6B&lt;br /&gt;
#define OP_ScriptFunctionCall2 0x6C&lt;br /&gt;
#define OP_GetNegUnsignedShort 0x6D&lt;br /&gt;
#define OP_GetNegByte		0x6E&lt;br /&gt;
#define OP_SafeCreateVariableFieldCached	0x6F&lt;br /&gt;
#define OP_greater_equal	0x70&lt;br /&gt;
#define OP_vector		0x71&lt;br /&gt;
#define OP_GetBuiltinMethod	0x72&lt;br /&gt;
#define OP_endswitch	0x73&lt;br /&gt;
#define OP_ClearArray	0x74&lt;br /&gt;
#define OP_DecTop	0x75&lt;br /&gt;
#define OP_CastBool	0x76&lt;br /&gt;
#define OP_EvalArrayRef	0x77&lt;br /&gt;
#define OP_CreateLocalVariable2		0x78&lt;br /&gt;
#define OP_GetZero			0x79&lt;br /&gt;
#define OP_wait				0x7A&lt;br /&gt;
#define OP_waittill			0x7B&lt;br /&gt;
#define OP_GetIString			0x7C&lt;br /&gt;
#define OP_ScriptFunctionFarCall	0x7D&lt;br /&gt;
#define OP_GetAnimObject		0x7E&lt;br /&gt;
#define OP_GetAnimTree			0x7F&lt;br /&gt;
#define OP_EvalLocalArrayCached		0x80&lt;br /&gt;
#define OP_mod				0x81&lt;br /&gt;
#define OP_ScriptThreadFarCall		0x82&lt;br /&gt;
#define OP_GetUnsignedShort		0x83&lt;br /&gt;
#define OP_clearparams		0x84&lt;br /&gt;
#define OP_ScriptMethodThreadCallPointer		0x85&lt;br /&gt;
#define OP_ScriptFunctionCallPointer		0x86&lt;br /&gt;
#define OP_EmptyArray		0x87&lt;br /&gt;
#define OP_SafeSetVariableFieldCached	0x88&lt;br /&gt;
// nop&lt;br /&gt;
#define OP_EvalFieldVariableRef		0x8A&lt;br /&gt;
#define OP_opcode97	0x8B&lt;br /&gt;
// nop&lt;br /&gt;
#define OP_GetFloat			0x8D&lt;br /&gt;
#define OP_EvalLocalVariableRefCached	0x8E&lt;br /&gt;
#define OP_JumpOnFalse			0x8F&lt;br /&gt;
#define OP_BoolComplement		0x90&lt;br /&gt;
#define OP_ScriptThreadCallPointer			0x91&lt;br /&gt;
#define OP_ScriptFunctionFarCall2	0x92&lt;br /&gt;
#define OP_less				0x93&lt;br /&gt;
#define OP_BoolNot			0x94&lt;br /&gt;
#define OP_waittillFrameEnd		0x95&lt;br /&gt;
#define OP_GetString			0x96&lt;br /&gt;
#define OP_EvalLevelFieldVariable	0x97&lt;br /&gt;
#define OP_GetLevelObject	0x98&lt;br /&gt;
#define OP_inc			0x99&lt;br /&gt;
#define OP_CallBuiltinMethod0	0x9A&lt;br /&gt;
#define OP_CallBuiltinMethod1	0x9B&lt;br /&gt;
#define OP_CallBuiltinMethod2	0x9C&lt;br /&gt;
#define OP_CallBuiltinMethod3	0x9D&lt;br /&gt;
#define OP_CallBuiltinMethod4	0x9E&lt;br /&gt;
#define OP_CallBuiltinMethod5	0x9F&lt;br /&gt;
#define OP_CallBuiltinMethod	0xA0&lt;br /&gt;
#define OP_GetAnim		0xA1&lt;br /&gt;
#define OP_switch		0xA2&lt;br /&gt;
#define OP_SetVariableField	0xA3&lt;br /&gt;
#define OP_divide		0xA4&lt;br /&gt;
#define OP_GetMethod		0xA5&lt;br /&gt;
#define OP_opcode102	0xA6&lt;br /&gt;
#define OP_multiply			0xA7&lt;br /&gt;
#define OP_opcode72			0xA8&lt;br /&gt;
#define OP_EvalAnimFieldVariableRef	0xA9&lt;br /&gt;
#define OP_EvalLocalArrayRefCached	0xAA&lt;br /&gt;
#define OP_EvalLocalVariableRefCached0	0xAB&lt;br /&gt;
#define OP_bit_and			0xAC&lt;br /&gt;
#define OP_GetAnimation			0xAD&lt;br /&gt;
#define OP_GetFunction			0xAE&lt;br /&gt;
#define OP_opcode111			0xAF&lt;br /&gt;
#define OP_jump				0xB0&lt;br /&gt;
#define OP_PreScriptCall		0xB1&lt;br /&gt;
#define OP_ScriptMethodFarCall	0xB2&lt;br /&gt;
#define OP_inequality		0xB3&lt;br /&gt;
#define OP_ScriptFunctionCall	0xB4&lt;br /&gt;
#define OP_bit_ex_or		0xB5&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Method List ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!rowspan=&amp;quot;2&amp;quot;|Method&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|MW3&lt;br /&gt;
|-&lt;br /&gt;
!PC ID&lt;br /&gt;
!PS3/XBOX ID&lt;br /&gt;
&amp;lt;!-- builtin --&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|attach&lt;br /&gt;
|0x8017&lt;br /&gt;
|0x8000&lt;br /&gt;
|-&lt;br /&gt;
|attachshieldmodel&lt;br /&gt;
|0x8018&lt;br /&gt;
|0x8001&lt;br /&gt;
|-&lt;br /&gt;
|detach&lt;br /&gt;
|0x8024&lt;br /&gt;
|0x8002&lt;br /&gt;
|-&lt;br /&gt;
|detachshieldmodel&lt;br /&gt;
|0x8025&lt;br /&gt;
|0x8003&lt;br /&gt;
|-&lt;br /&gt;
|moveshieldmodel&lt;br /&gt;
|0x8026&lt;br /&gt;
|0x8004&lt;br /&gt;
|-&lt;br /&gt;
|detachall&lt;br /&gt;
|0x8027&lt;br /&gt;
|0x8005&lt;br /&gt;
|-&lt;br /&gt;
|getattachsize&lt;br /&gt;
|0x8028&lt;br /&gt;
|0x8006&lt;br /&gt;
|-&lt;br /&gt;
|getattachmodelname&lt;br /&gt;
|0x8029&lt;br /&gt;
|0x8007&lt;br /&gt;
|-&lt;br /&gt;
|getattachtagname&lt;br /&gt;
|0x802a&lt;br /&gt;
|0x8008&lt;br /&gt;
|-&lt;br /&gt;
|getattachignorecollision&lt;br /&gt;
|0x8043&lt;br /&gt;
|0x8009&lt;br /&gt;
|-&lt;br /&gt;
|hidepart&lt;br /&gt;
|0x8044&lt;br /&gt;
|0x800a&lt;br /&gt;
|-&lt;br /&gt;
|allinstances&lt;br /&gt;
|0x8045&lt;br /&gt;
|0x800b&lt;br /&gt;
|-&lt;br /&gt;
|hideallparts&lt;br /&gt;
|0x8046&lt;br /&gt;
|0x800c&lt;br /&gt;
|-&lt;br /&gt;
|showpart&lt;br /&gt;
|0x8047&lt;br /&gt;
|0x800d&lt;br /&gt;
|-&lt;br /&gt;
|showallparts&lt;br /&gt;
|0x8048&lt;br /&gt;
|0x800e&lt;br /&gt;
|-&lt;br /&gt;
|linkto&lt;br /&gt;
|0x8049&lt;br /&gt;
|0x800f&lt;br /&gt;
|-&lt;br /&gt;
|linktoblendtotag&lt;br /&gt;
|0x804a&lt;br /&gt;
|0x8010&lt;br /&gt;
|-&lt;br /&gt;
|unlink&lt;br /&gt;
|0x804b&lt;br /&gt;
|0x8011&lt;br /&gt;
|-&lt;br /&gt;
|islinked&lt;br /&gt;
|0x8063&lt;br /&gt;
|0x8012&lt;br /&gt;
|-&lt;br /&gt;
|enablelinkto&lt;br /&gt;
|0x8064&lt;br /&gt;
|0x8013&lt;br /&gt;
|-&lt;br /&gt;
|playerlinkto&lt;br /&gt;
|0x8075&lt;br /&gt;
|0x8014&lt;br /&gt;
|-&lt;br /&gt;
|playerlinktodelta&lt;br /&gt;
|0x8076&lt;br /&gt;
|0x8015&lt;br /&gt;
|-&lt;br /&gt;
|playerlinkweaponviewtodelta&lt;br /&gt;
|0x8077&lt;br /&gt;
|0x8016&lt;br /&gt;
|-&lt;br /&gt;
|playerlinktoabsolute&lt;br /&gt;
|0x8078&lt;br /&gt;
|0x8017&lt;br /&gt;
|-&lt;br /&gt;
|playerlinktoblend&lt;br /&gt;
|0x8079&lt;br /&gt;
|0x8018&lt;br /&gt;
|-&lt;br /&gt;
|playerlinkedoffsetenable&lt;br /&gt;
|0x807a&lt;br /&gt;
|0x8019&lt;br /&gt;
|-&lt;br /&gt;
|playerlinkedoffsetdisable&lt;br /&gt;
|0x8094&lt;br /&gt;
|0x801a&lt;br /&gt;
|-&lt;br /&gt;
|playerlinkedsetviewznear&lt;br /&gt;
|0x8095&lt;br /&gt;
|0x801b&lt;br /&gt;
|-&lt;br /&gt;
|playerlinkedsetusebaseangleforviewclamp&lt;br /&gt;
|0x8096&lt;br /&gt;
|0x801c&lt;br /&gt;
|-&lt;br /&gt;
|lerpviewangleclamp&lt;br /&gt;
|0x8097&lt;br /&gt;
|0x801d&lt;br /&gt;
|-&lt;br /&gt;
|setviewangleresistance&lt;br /&gt;
|0x8098&lt;br /&gt;
|0x801e&lt;br /&gt;
|-&lt;br /&gt;
|geteye&lt;br /&gt;
|0x8099&lt;br /&gt;
|0x801f&lt;br /&gt;
|-&lt;br /&gt;
|istouching&lt;br /&gt;
|0x809a&lt;br /&gt;
|0x8020&lt;br /&gt;
|-&lt;br /&gt;
|stoploopsound&lt;br /&gt;
|0x809b&lt;br /&gt;
|0x8021&lt;br /&gt;
|-&lt;br /&gt;
|stopsounds&lt;br /&gt;
|0x809c&lt;br /&gt;
|0x8022&lt;br /&gt;
|-&lt;br /&gt;
|playrumbleonentity&lt;br /&gt;
|0x809d&lt;br /&gt;
|0x8023&lt;br /&gt;
|-&lt;br /&gt;
|playrumblelooponentity&lt;br /&gt;
|0x809e&lt;br /&gt;
|0x8024&lt;br /&gt;
|-&lt;br /&gt;
|stoprumble&lt;br /&gt;
|0x809f&lt;br /&gt;
|0x8025&lt;br /&gt;
|-&lt;br /&gt;
|delete&lt;br /&gt;
|0x80a0&lt;br /&gt;
|0x8026&lt;br /&gt;
|-&lt;br /&gt;
|setmodel&lt;br /&gt;
|0x80a1&lt;br /&gt;
|0x8027&lt;br /&gt;
|-&lt;br /&gt;
|laseron&lt;br /&gt;
|0x80a2&lt;br /&gt;
|0x8028&lt;br /&gt;
|-&lt;br /&gt;
|laseroff&lt;br /&gt;
|0x80a3&lt;br /&gt;
|0x8029&lt;br /&gt;
|-&lt;br /&gt;
|laseraltviewon&lt;br /&gt;
|0x80a4&lt;br /&gt;
|0x802a&lt;br /&gt;
|-&lt;br /&gt;
|laseraltviewoff&lt;br /&gt;
|0x80a5&lt;br /&gt;
|0x802b&lt;br /&gt;
|-&lt;br /&gt;
|thermalvisionon&lt;br /&gt;
|0x80a6&lt;br /&gt;
|0x802c&lt;br /&gt;
|-&lt;br /&gt;
|thermalvisionoff&lt;br /&gt;
|0x80a7&lt;br /&gt;
|0x802d&lt;br /&gt;
|-&lt;br /&gt;
|unknown&lt;br /&gt;
|0x8023&lt;br /&gt;
|0x82ef&lt;br /&gt;
|-&lt;br /&gt;
|unknown&lt;br /&gt;
|0x8000&lt;br /&gt;
|0x82f0&lt;br /&gt;
|-&lt;br /&gt;
|thermalvisionfofoverlayon&lt;br /&gt;
|0x80a8&lt;br /&gt;
|0x802e&lt;br /&gt;
|-&lt;br /&gt;
|thermalvisionfofoverlayoff&lt;br /&gt;
|0x80a9&lt;br /&gt;
|0x802f&lt;br /&gt;
|-&lt;br /&gt;
|autospotoverlayon&lt;br /&gt;
|0x80aa&lt;br /&gt;
|0x8030&lt;br /&gt;
|-&lt;br /&gt;
|autospotoverlayoff&lt;br /&gt;
|0x80ab&lt;br /&gt;
|0x8031&lt;br /&gt;
|-&lt;br /&gt;
|setcontents&lt;br /&gt;
|0x80ac&lt;br /&gt;
|0x8032&lt;br /&gt;
|-&lt;br /&gt;
|makeusable&lt;br /&gt;
|0x80ad&lt;br /&gt;
|0x8033&lt;br /&gt;
|-&lt;br /&gt;
|makeunusable&lt;br /&gt;
|0x80ae&lt;br /&gt;
|0x8034&lt;br /&gt;
|-&lt;br /&gt;
|setcursorhint&lt;br /&gt;
|0x80c6&lt;br /&gt;
|0x8035&lt;br /&gt;
|-&lt;br /&gt;
|sethintstring&lt;br /&gt;
|0x80c7&lt;br /&gt;
|0x8036&lt;br /&gt;
|-&lt;br /&gt;
|forceusehinton&lt;br /&gt;
|0x80c8&lt;br /&gt;
|0x8037&lt;br /&gt;
|-&lt;br /&gt;
|forceusehintoff&lt;br /&gt;
|0x80c9&lt;br /&gt;
|0x8038&lt;br /&gt;
|-&lt;br /&gt;
|makesoft&lt;br /&gt;
|0x80ca&lt;br /&gt;
|0x8039&lt;br /&gt;
|-&lt;br /&gt;
|makehard&lt;br /&gt;
|0x80cb&lt;br /&gt;
|0x803a&lt;br /&gt;
|-&lt;br /&gt;
|willneverchange&lt;br /&gt;
|0x80cc&lt;br /&gt;
|0x803b&lt;br /&gt;
|-&lt;br /&gt;
|startfiring&lt;br /&gt;
|0x80cd&lt;br /&gt;
|0x803c&lt;br /&gt;
|-&lt;br /&gt;
|stopfiring&lt;br /&gt;
|0x80ce&lt;br /&gt;
|0x803d&lt;br /&gt;
|-&lt;br /&gt;
|isfiringturret&lt;br /&gt;
|0x80cf&lt;br /&gt;
|0x803e&lt;br /&gt;
|-&lt;br /&gt;
|startbarrelspin&lt;br /&gt;
|0x80d0&lt;br /&gt;
|0x803f&lt;br /&gt;
|-&lt;br /&gt;
|stopbarrelspin&lt;br /&gt;
|0x80d1&lt;br /&gt;
|0x8040&lt;br /&gt;
|-&lt;br /&gt;
|getbarrelspinrate&lt;br /&gt;
|0x80d2&lt;br /&gt;
|0x8041&lt;br /&gt;
|-&lt;br /&gt;
|remotecontrolturret&lt;br /&gt;
|0x80d3&lt;br /&gt;
|0x8042&lt;br /&gt;
|-&lt;br /&gt;
|remotecontrolturretoff&lt;br /&gt;
|0x80d4&lt;br /&gt;
|0x8043&lt;br /&gt;
|-&lt;br /&gt;
|shootturret&lt;br /&gt;
|0x80d5&lt;br /&gt;
|0x8044&lt;br /&gt;
|-&lt;br /&gt;
|getturretowner&lt;br /&gt;
|0x80d6&lt;br /&gt;
|0x8045&lt;br /&gt;
|-&lt;br /&gt;
|setsentryowner&lt;br /&gt;
|0x80ee&lt;br /&gt;
|0x8046&lt;br /&gt;
|-&lt;br /&gt;
|setsentrycarrier&lt;br /&gt;
|0x80ef&lt;br /&gt;
|0x8047&lt;br /&gt;
|-&lt;br /&gt;
|setturretminimapvisible&lt;br /&gt;
|0x80f0&lt;br /&gt;
|0x8048&lt;br /&gt;
|-&lt;br /&gt;
|settargetentity&lt;br /&gt;
|0x80f1&lt;br /&gt;
|0x8049&lt;br /&gt;
|-&lt;br /&gt;
|snaptotargetentity&lt;br /&gt;
|0x80f2&lt;br /&gt;
|0x804a&lt;br /&gt;
|-&lt;br /&gt;
|cleartargetentity&lt;br /&gt;
|0x80f3&lt;br /&gt;
|0x804b&lt;br /&gt;
|-&lt;br /&gt;
|getturrettarget&lt;br /&gt;
|0x80f4&lt;br /&gt;
|0x804c&lt;br /&gt;
|-&lt;br /&gt;
|setplayerspread&lt;br /&gt;
|0x80f5&lt;br /&gt;
|0x804d&lt;br /&gt;
|-&lt;br /&gt;
|setaispread&lt;br /&gt;
|0x80f6&lt;br /&gt;
|0x804e&lt;br /&gt;
|-&lt;br /&gt;
|setsuppressiontime&lt;br /&gt;
|0x80f7&lt;br /&gt;
|0x804f&lt;br /&gt;
|-&lt;br /&gt;
|setconvergencetime&lt;br /&gt;
|0x8119&lt;br /&gt;
|0x8050&lt;br /&gt;
|-&lt;br /&gt;
|setconvergenceheightpercent&lt;br /&gt;
|0x811a&lt;br /&gt;
|0x8051&lt;br /&gt;
|-&lt;br /&gt;
|setturretteam&lt;br /&gt;
|0x811b&lt;br /&gt;
|0x8052&lt;br /&gt;
|-&lt;br /&gt;
|maketurretsolid&lt;br /&gt;
|0x811c&lt;br /&gt;
|0x8053&lt;br /&gt;
|-&lt;br /&gt;
|maketurretoperable&lt;br /&gt;
|0x811d&lt;br /&gt;
|0x8054&lt;br /&gt;
|-&lt;br /&gt;
|maketurretinoperable&lt;br /&gt;
|0x811e&lt;br /&gt;
|0x8055&lt;br /&gt;
|-&lt;br /&gt;
|setturretaccuracy&lt;br /&gt;
|0x813a&lt;br /&gt;
|0x8056&lt;br /&gt;
|-&lt;br /&gt;
|setrightarc&lt;br /&gt;
|0x813b&lt;br /&gt;
|0x8057&lt;br /&gt;
|-&lt;br /&gt;
|setleftarc&lt;br /&gt;
|0x813c&lt;br /&gt;
|0x8058&lt;br /&gt;
|-&lt;br /&gt;
|settoparc&lt;br /&gt;
|0x813d&lt;br /&gt;
|0x8059&lt;br /&gt;
|-&lt;br /&gt;
|setbottomarc&lt;br /&gt;
|0x813e&lt;br /&gt;
|0x805a&lt;br /&gt;
|-&lt;br /&gt;
|setautorotationdelay&lt;br /&gt;
|0x813f&lt;br /&gt;
|0x805b&lt;br /&gt;
|-&lt;br /&gt;
|setdefaultdroppitch&lt;br /&gt;
|0x8140&lt;br /&gt;
|0x805c&lt;br /&gt;
|-&lt;br /&gt;
|restoredefaultdroppitch&lt;br /&gt;
|0x8141&lt;br /&gt;
|0x805d&lt;br /&gt;
|-&lt;br /&gt;
|turretfiredisable&lt;br /&gt;
|0x8142&lt;br /&gt;
|0x805e&lt;br /&gt;
|-&lt;br /&gt;
|turretfireenable&lt;br /&gt;
|0x8161&lt;br /&gt;
|0x805f&lt;br /&gt;
|-&lt;br /&gt;
|setturretmodechangewait&lt;br /&gt;
|0x8162&lt;br /&gt;
|0x8060&lt;br /&gt;
|-&lt;br /&gt;
|usetriggerrequirelookat&lt;br /&gt;
|0x8163&lt;br /&gt;
|0x8061&lt;br /&gt;
|-&lt;br /&gt;
|getstance&lt;br /&gt;
|0x8164&lt;br /&gt;
|0x8062&lt;br /&gt;
|-&lt;br /&gt;
|setstance&lt;br /&gt;
|0x8165&lt;br /&gt;
|0x8063&lt;br /&gt;
|-&lt;br /&gt;
|itemweaponsetammo&lt;br /&gt;
|0x8166&lt;br /&gt;
|0x8064&lt;br /&gt;
|-&lt;br /&gt;
|getammocount&lt;br /&gt;
|0x8167&lt;br /&gt;
|0x8065&lt;br /&gt;
|-&lt;br /&gt;
|gettagorigin&lt;br /&gt;
|0x8168&lt;br /&gt;
|0x8066&lt;br /&gt;
|-&lt;br /&gt;
|gettagangles&lt;br /&gt;
|0x8169&lt;br /&gt;
|0x8067&lt;br /&gt;
|-&lt;br /&gt;
|shellshock&lt;br /&gt;
|0x816a&lt;br /&gt;
|0x8068&lt;br /&gt;
|-&lt;br /&gt;
|stunplayer&lt;br /&gt;
|0x816b&lt;br /&gt;
|0x8069&lt;br /&gt;
|-&lt;br /&gt;
|stopshellshock&lt;br /&gt;
|0x816c&lt;br /&gt;
|0x806a&lt;br /&gt;
|-&lt;br /&gt;
|fadeoutshellshock&lt;br /&gt;
|0x816d&lt;br /&gt;
|0x806b&lt;br /&gt;
|-&lt;br /&gt;
|setdepthoffield&lt;br /&gt;
|0x816e&lt;br /&gt;
|0x806c&lt;br /&gt;
|-&lt;br /&gt;
|setviewmodeldepthoffield&lt;br /&gt;
|0x816f&lt;br /&gt;
|0x806d&lt;br /&gt;
|-&lt;br /&gt;
|setmotionblurmovescale&lt;br /&gt;
|0x8170&lt;br /&gt;
|0x806e&lt;br /&gt;
|-&lt;br /&gt;
|setmotionblurturnscale&lt;br /&gt;
|0x8190&lt;br /&gt;
|0x806f&lt;br /&gt;
|-&lt;br /&gt;
|setmotionblurzoomscale&lt;br /&gt;
|0x8191&lt;br /&gt;
|0x8070&lt;br /&gt;
|-&lt;br /&gt;
|viewkick&lt;br /&gt;
|0x8192&lt;br /&gt;
|0x8071&lt;br /&gt;
|-&lt;br /&gt;
|localtoworldcoords&lt;br /&gt;
|0x8193&lt;br /&gt;
|0x8072&lt;br /&gt;
|-&lt;br /&gt;
|getentitynumber&lt;br /&gt;
|0x8194&lt;br /&gt;
|0x8073&lt;br /&gt;
|-&lt;br /&gt;
|getentityvelocity&lt;br /&gt;
|0x8195&lt;br /&gt;
|0x8074&lt;br /&gt;
|-&lt;br /&gt;
|enablegrenadetouchdamage&lt;br /&gt;
|0x8196&lt;br /&gt;
|0x8075&lt;br /&gt;
|-&lt;br /&gt;
|disablegrenadetouchdamage&lt;br /&gt;
|0x8197&lt;br /&gt;
|0x8076&lt;br /&gt;
|-&lt;br /&gt;
|enableaimassist&lt;br /&gt;
|0x8198&lt;br /&gt;
|0x8077&lt;br /&gt;
|-&lt;br /&gt;
|disableaimassist&lt;br /&gt;
|0x81b7&lt;br /&gt;
|0x8078&lt;br /&gt;
|-&lt;br /&gt;
|radiusdamage&lt;br /&gt;
|0x81b8&lt;br /&gt;
|0x8079&lt;br /&gt;
|-&lt;br /&gt;
|detonate&lt;br /&gt;
|0x81b9&lt;br /&gt;
|0x807a&lt;br /&gt;
|-&lt;br /&gt;
|damageconetrace&lt;br /&gt;
|0x81ba&lt;br /&gt;
|0x807b&lt;br /&gt;
|-&lt;br /&gt;
|sightconetrace&lt;br /&gt;
|0x81bb&lt;br /&gt;
|0x807c&lt;br /&gt;
|-&lt;br /&gt;
|settargetent&lt;br /&gt;
|0x81bc&lt;br /&gt;
|0x807d&lt;br /&gt;
|-&lt;br /&gt;
|settargetpos&lt;br /&gt;
|0x81bd&lt;br /&gt;
|0x807e&lt;br /&gt;
|-&lt;br /&gt;
|cleartarget&lt;br /&gt;
|0x81be&lt;br /&gt;
|0x807f&lt;br /&gt;
|-&lt;br /&gt;
|setflightmodedirect&lt;br /&gt;
|0x81bf&lt;br /&gt;
|0x8080&lt;br /&gt;
|-&lt;br /&gt;
|setflightmodetop&lt;br /&gt;
|0x81c0&lt;br /&gt;
|0x8081&lt;br /&gt;
|-&lt;br /&gt;
|getlightintensity&lt;br /&gt;
|0x81c1&lt;br /&gt;
|0x8082&lt;br /&gt;
|-&lt;br /&gt;
|setlightintensity&lt;br /&gt;
|0x81c2&lt;br /&gt;
|0x8083&lt;br /&gt;
|-&lt;br /&gt;
|isragdoll&lt;br /&gt;
|0x81c3&lt;br /&gt;
|0x8084&lt;br /&gt;
|-&lt;br /&gt;
|setmovespeedscale&lt;br /&gt;
|0x81c4&lt;br /&gt;
|0x8085&lt;br /&gt;
|-&lt;br /&gt;
|cameralinkto&lt;br /&gt;
|0x81c5&lt;br /&gt;
|0x8086&lt;br /&gt;
|-&lt;br /&gt;
|cameraunlink&lt;br /&gt;
|0x81c6&lt;br /&gt;
|0x8087&lt;br /&gt;
|-&lt;br /&gt;
|controlslinkto&lt;br /&gt;
|0x81e3&lt;br /&gt;
|0x8088&lt;br /&gt;
|-&lt;br /&gt;
|controlsunlink&lt;br /&gt;
|0x81e4&lt;br /&gt;
|0x8089&lt;br /&gt;
|-&lt;br /&gt;
|makevehiclesolidcapsule&lt;br /&gt;
|0x81e5&lt;br /&gt;
|0x808a&lt;br /&gt;
|-&lt;br /&gt;
|makevehiclesolidsphere&lt;br /&gt;
|0x81e6&lt;br /&gt;
|0x808b&lt;br /&gt;
|-&lt;br /&gt;
|remotecontrolvehicle&lt;br /&gt;
|0x81e8&lt;br /&gt;
|0x808d&lt;br /&gt;
|-&lt;br /&gt;
|remotecontrolvehicleoff&lt;br /&gt;
|0x81e9&lt;br /&gt;
|0x808e&lt;br /&gt;
|-&lt;br /&gt;
|isfiringvehicleturret&lt;br /&gt;
|0x81ea&lt;br /&gt;
|0x808f&lt;br /&gt;
|-&lt;br /&gt;
|drivevehicleandcontrolturret&lt;br /&gt;
|0x81eb&lt;br /&gt;
|0x8090&lt;br /&gt;
|-&lt;br /&gt;
|drivevehicleandcontrolturretoff&lt;br /&gt;
|0x81ec&lt;br /&gt;
|0x8091&lt;br /&gt;
|-&lt;br /&gt;
|getplayersetting&lt;br /&gt;
|0x81ed&lt;br /&gt;
|0x8092&lt;br /&gt;
|-&lt;br /&gt;
|getlocalplayerprofiledata&lt;br /&gt;
|0x81ee&lt;br /&gt;
|0x8093&lt;br /&gt;
|-&lt;br /&gt;
|setlocalplayerprofiledata&lt;br /&gt;
|0x81ef&lt;br /&gt;
|0x8094&lt;br /&gt;
|-&lt;br /&gt;
|remotecamerasoundscapeon&lt;br /&gt;
|0x81f0&lt;br /&gt;
|0x8095&lt;br /&gt;
|-&lt;br /&gt;
|remotecamerasoundscapeoff&lt;br /&gt;
|0x81f1&lt;br /&gt;
|0x8096&lt;br /&gt;
|-&lt;br /&gt;
|radarjamon&lt;br /&gt;
|0x81f2&lt;br /&gt;
|0x8097&lt;br /&gt;
|-&lt;br /&gt;
|radarjamoff&lt;br /&gt;
|0x81f3&lt;br /&gt;
|0x8098&lt;br /&gt;
|-&lt;br /&gt;
|setmotiontrackervisible&lt;br /&gt;
|0x81f4&lt;br /&gt;
|0x8099&lt;br /&gt;
|-&lt;br /&gt;
|getmotiontrackervisible&lt;br /&gt;
|0x81f5&lt;br /&gt;
|0x809a&lt;br /&gt;
|-&lt;br /&gt;
|circle&lt;br /&gt;
|0x81f6&lt;br /&gt;
|0x809b&lt;br /&gt;
|-&lt;br /&gt;
|getpointinbounds&lt;br /&gt;
|0x81f7&lt;br /&gt;
|0x809c&lt;br /&gt;
|-&lt;br /&gt;
|transfermarkstonewscriptmodel&lt;br /&gt;
|0x81f8&lt;br /&gt;
|0x809d&lt;br /&gt;
|-&lt;br /&gt;
|setwatersheeting&lt;br /&gt;
|0x81f9&lt;br /&gt;
|0x809e&lt;br /&gt;
|-&lt;br /&gt;
|setweaponhudiconoverride&lt;br /&gt;
|0x81fa&lt;br /&gt;
|0x809f&lt;br /&gt;
|-&lt;br /&gt;
|getweaponhudiconoverride&lt;br /&gt;
|0x81fb&lt;br /&gt;
|0x80a0&lt;br /&gt;
|-&lt;br /&gt;
|setempjammed&lt;br /&gt;
|0x81fc&lt;br /&gt;
|0x80a1&lt;br /&gt;
|-&lt;br /&gt;
|playersetexpfog&lt;br /&gt;
|0x81fd&lt;br /&gt;
|0x80a2&lt;br /&gt;
|-&lt;br /&gt;
|isitemunlocked&lt;br /&gt;
|0x81fe&lt;br /&gt;
|0x80a3&lt;br /&gt;
|-&lt;br /&gt;
|getplayerdata&lt;br /&gt;
|0x81ff&lt;br /&gt;
|0x80a4&lt;br /&gt;
|-&lt;br /&gt;
|setplayerdata&lt;br /&gt;
|0x821a&lt;br /&gt;
|0x80a5&lt;br /&gt;
|-&lt;br /&gt;
|trackerupdate&lt;br /&gt;
|N/A&lt;br /&gt;
|0x80a6&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- player 1 --&amp;gt;&lt;br /&gt;
|pingplayer&lt;br /&gt;
|0x821c&lt;br /&gt;
|0x80a7&lt;br /&gt;
|-&lt;br /&gt;
|buttonpressed&lt;br /&gt;
|0x821d&lt;br /&gt;
|0x80a8&lt;br /&gt;
|-&lt;br /&gt;
|sayall&lt;br /&gt;
|0x821e&lt;br /&gt;
|0x80a9&lt;br /&gt;
|-&lt;br /&gt;
|sayteam&lt;br /&gt;
|0x821f&lt;br /&gt;
|0x80aa&lt;br /&gt;
|-&lt;br /&gt;
|showscoreboard&lt;br /&gt;
|0x8220&lt;br /&gt;
|0x80ab&lt;br /&gt;
|-&lt;br /&gt;
|setspawnweapon&lt;br /&gt;
|0x8221&lt;br /&gt;
|0x80ac&lt;br /&gt;
|-&lt;br /&gt;
|dropitem&lt;br /&gt;
|0x8222&lt;br /&gt;
|0x80ad&lt;br /&gt;
|-&lt;br /&gt;
|dropscavengerbag&lt;br /&gt;
|0x8223&lt;br /&gt;
|0x80ae&lt;br /&gt;
|-&lt;br /&gt;
|finishplayerdamage&lt;br /&gt;
|0x823c&lt;br /&gt;
|0x80af&lt;br /&gt;
|-&lt;br /&gt;
|suicide&lt;br /&gt;
|0x823d&lt;br /&gt;
|0x80b0&lt;br /&gt;
|-&lt;br /&gt;
|closeingamemenu&lt;br /&gt;
|0x823e&lt;br /&gt;
|0x80b1&lt;br /&gt;
|-&lt;br /&gt;
|iprintln&lt;br /&gt;
|0x823f&lt;br /&gt;
|0x80b2&lt;br /&gt;
|-&lt;br /&gt;
|iprintlnbold&lt;br /&gt;
|0x8240&lt;br /&gt;
|0x80b3&lt;br /&gt;
|-&lt;br /&gt;
|spawn&lt;br /&gt;
|0x8241&lt;br /&gt;
|0x80b4&lt;br /&gt;
|-&lt;br /&gt;
|setentertime&lt;br /&gt;
|0x8242&lt;br /&gt;
|0x80b5&lt;br /&gt;
|-&lt;br /&gt;
|cloneplayer&lt;br /&gt;
|0x8243&lt;br /&gt;
|0x80b6&lt;br /&gt;
|-&lt;br /&gt;
|istalking&lt;br /&gt;
|0x8244&lt;br /&gt;
|0x80b7&lt;br /&gt;
|-&lt;br /&gt;
|allowspectateteam&lt;br /&gt;
|0x8245&lt;br /&gt;
|0x80b8&lt;br /&gt;
|-&lt;br /&gt;
|getguid&lt;br /&gt;
|0x8246&lt;br /&gt;
|0x80b9&lt;br /&gt;
|-&lt;br /&gt;
|getxuid&lt;br /&gt;
|0x8266&lt;br /&gt;
|0x80ba&lt;br /&gt;
|-&lt;br /&gt;
|ishost&lt;br /&gt;
|0x8267&lt;br /&gt;
|0x80bb&lt;br /&gt;
|-&lt;br /&gt;
|getspectatingplayer&lt;br /&gt;
|0x8268&lt;br /&gt;
|0x80bc&lt;br /&gt;
|-&lt;br /&gt;
|predictstreampos&lt;br /&gt;
|0x8269&lt;br /&gt;
|0x80bd&lt;br /&gt;
|-&lt;br /&gt;
|updatescores&lt;br /&gt;
|0x826a&lt;br /&gt;
|0x80be&lt;br /&gt;
|-&lt;br /&gt;
|updatedmscores&lt;br /&gt;
|0x826b&lt;br /&gt;
|0x80bf&lt;br /&gt;
|-&lt;br /&gt;
|setrank&lt;br /&gt;
|0x826c&lt;br /&gt;
|0x80c0&lt;br /&gt;
|-&lt;br /&gt;
|setcardtitle&lt;br /&gt;
|0x826d&lt;br /&gt;
|0x80c1&lt;br /&gt;
|-&lt;br /&gt;
|setcardicon&lt;br /&gt;
|0x828c&lt;br /&gt;
|0x80c2&lt;br /&gt;
|-&lt;br /&gt;
|setcardnameplate&lt;br /&gt;
|0x828d&lt;br /&gt;
|0x80c3&lt;br /&gt;
|-&lt;br /&gt;
|setcarddisplayslot&lt;br /&gt;
|0x828e&lt;br /&gt;
|0x80c4&lt;br /&gt;
|-&lt;br /&gt;
|kc_regweaponforfxremoval&lt;br /&gt;
|0x828f&lt;br /&gt;
|0x80c5&lt;br /&gt;
|-&lt;br /&gt;
|laststandrevive&lt;br /&gt;
|0x8290&lt;br /&gt;
|0x80c6&lt;br /&gt;
|-&lt;br /&gt;
|setspectatedefaults&lt;br /&gt;
|0x8291&lt;br /&gt;
|0x80c7&lt;br /&gt;
|-&lt;br /&gt;
|getthirdpersoncrosshairoffset&lt;br /&gt;
|0x8292&lt;br /&gt;
|0x80c8&lt;br /&gt;
|-&lt;br /&gt;
|disableweaponpickup&lt;br /&gt;
|0x8293&lt;br /&gt;
|0x80c9&lt;br /&gt;
|-&lt;br /&gt;
|enableweaponpickup&lt;br /&gt;
|0x8294&lt;br /&gt;
|0x80ca&lt;br /&gt;
|-&lt;br /&gt;
|issplitscreenplayer&lt;br /&gt;
|N/A&lt;br /&gt;
|0x80cb&lt;br /&gt;
|-&lt;br /&gt;
|issplitscreenplayerprimary&lt;br /&gt;
|N/A&lt;br /&gt;
|0x80cc&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- player 2 --&amp;gt;&lt;br /&gt;
|getviewmodel&lt;br /&gt;
|0x82b1&lt;br /&gt;
|0x80cd&lt;br /&gt;
|-&lt;br /&gt;
|fragbuttonpressed&lt;br /&gt;
|0x82b2&lt;br /&gt;
|0x80ce&lt;br /&gt;
|-&lt;br /&gt;
|secondaryoffhandbuttonpressed&lt;br /&gt;
|0x82b3&lt;br /&gt;
|0x80cf&lt;br /&gt;
|-&lt;br /&gt;
|getcurrentweaponclipammo&lt;br /&gt;
|0x82b4&lt;br /&gt;
|0x80d0&lt;br /&gt;
|-&lt;br /&gt;
|setvelocity&lt;br /&gt;
|0x82b5&lt;br /&gt;
|0x80d1&lt;br /&gt;
|-&lt;br /&gt;
|getplayerviewheight&lt;br /&gt;
|0x82b6&lt;br /&gt;
|0x80d2&lt;br /&gt;
|-&lt;br /&gt;
|unknown&lt;br /&gt;
|0x8309&lt;br /&gt;
|0x8309&lt;br /&gt;
|-&lt;br /&gt;
|getnormalizedmovement&lt;br /&gt;
|0x82b7&lt;br /&gt;
|0x80d3&lt;br /&gt;
|-&lt;br /&gt;
|getnormalizedcameramovement&lt;br /&gt;
|0x82ce&lt;br /&gt;
|0x80d4&lt;br /&gt;
|-&lt;br /&gt;
|giveweapon&lt;br /&gt;
|0x82cf&lt;br /&gt;
|0x80d5&lt;br /&gt;
|-&lt;br /&gt;
|takeweapon&lt;br /&gt;
|0x82d0&lt;br /&gt;
|0x80d6&lt;br /&gt;
|-&lt;br /&gt;
|takeallweapons&lt;br /&gt;
|0x82d1&lt;br /&gt;
|0x80d7&lt;br /&gt;
|-&lt;br /&gt;
|getcurrentweapon&lt;br /&gt;
|0x82d2&lt;br /&gt;
|0x80d8&lt;br /&gt;
|-&lt;br /&gt;
|getcurrentprimaryweapon&lt;br /&gt;
|0x82d3&lt;br /&gt;
|0x80d9&lt;br /&gt;
|-&lt;br /&gt;
|getcurrentoffhand&lt;br /&gt;
|0x82d4&lt;br /&gt;
|0x80da&lt;br /&gt;
|-&lt;br /&gt;
|hasweapon&lt;br /&gt;
|0x82d5&lt;br /&gt;
|0x80db&lt;br /&gt;
|-&lt;br /&gt;
|switchtoweapon&lt;br /&gt;
|0x82d6&lt;br /&gt;
|0x80dc&lt;br /&gt;
|-&lt;br /&gt;
|switchtoweaponimmediate&lt;br /&gt;
|0x82d7&lt;br /&gt;
|0x80dd&lt;br /&gt;
|-&lt;br /&gt;
|switchtooffhand&lt;br /&gt;
|0x82d8&lt;br /&gt;
|0x80de&lt;br /&gt;
|-&lt;br /&gt;
|givestartammo&lt;br /&gt;
|0x82f2&lt;br /&gt;
|0x80df&lt;br /&gt;
|-&lt;br /&gt;
|givemaxammo&lt;br /&gt;
|0x82f3&lt;br /&gt;
|0x80e0&lt;br /&gt;
|-&lt;br /&gt;
|getfractionstartammo&lt;br /&gt;
|0x82f4&lt;br /&gt;
|0x80e1&lt;br /&gt;
|-&lt;br /&gt;
|getfractionmaxammo&lt;br /&gt;
|0x82f5&lt;br /&gt;
|0x80e2&lt;br /&gt;
|-&lt;br /&gt;
|isdualwielding&lt;br /&gt;
|0x82f6&lt;br /&gt;
|0x80e3&lt;br /&gt;
|-&lt;br /&gt;
|isreloading&lt;br /&gt;
|0x82f7&lt;br /&gt;
|0x80e4&lt;br /&gt;
|-&lt;br /&gt;
|isswitchingweapon&lt;br /&gt;
|0x82f8&lt;br /&gt;
|0x80e5&lt;br /&gt;
|-&lt;br /&gt;
|setorigin&lt;br /&gt;
|0x82f9&lt;br /&gt;
|0x80e6&lt;br /&gt;
|-&lt;br /&gt;
|getvelocity&lt;br /&gt;
|0x82fa&lt;br /&gt;
|0x80e7&lt;br /&gt;
|-&lt;br /&gt;
|setplayerangles&lt;br /&gt;
|0x82fb&lt;br /&gt;
|0x80e8&lt;br /&gt;
|-&lt;br /&gt;
|getplayerangles&lt;br /&gt;
|0x82fc&lt;br /&gt;
|0x80e9&lt;br /&gt;
|-&lt;br /&gt;
|usebuttonpressed&lt;br /&gt;
|0x82fd&lt;br /&gt;
|0x80ea&lt;br /&gt;
|-&lt;br /&gt;
|attackbuttonpressed&lt;br /&gt;
|0x82fe&lt;br /&gt;
|0x80eb&lt;br /&gt;
|-&lt;br /&gt;
|adsbuttonpressed&lt;br /&gt;
|0x82ff&lt;br /&gt;
|0x80ec&lt;br /&gt;
|-&lt;br /&gt;
|meleebuttonpressed&lt;br /&gt;
|0x8300&lt;br /&gt;
|0x80ed&lt;br /&gt;
|-&lt;br /&gt;
|playerads&lt;br /&gt;
|0x8301&lt;br /&gt;
|0x80ee&lt;br /&gt;
|-&lt;br /&gt;
|isonground&lt;br /&gt;
|0x8302&lt;br /&gt;
|0x80ef&lt;br /&gt;
|-&lt;br /&gt;
|isusingturret&lt;br /&gt;
|0x8303&lt;br /&gt;
|0x80f0&lt;br /&gt;
|-&lt;br /&gt;
|setviewmodel&lt;br /&gt;
|0x8304&lt;br /&gt;
|0x80f1&lt;br /&gt;
|-&lt;br /&gt;
|setoffhandprimaryclass&lt;br /&gt;
|0x8305&lt;br /&gt;
|0x80f2&lt;br /&gt;
|-&lt;br /&gt;
|getoffhandprimaryclass&lt;br /&gt;
|0x8306&lt;br /&gt;
|0x80f3&lt;br /&gt;
|-&lt;br /&gt;
|setoffhandsecondaryclass&lt;br /&gt;
|0x82d9&lt;br /&gt;
|0x80f4&lt;br /&gt;
|-&lt;br /&gt;
|getoffhandsecondaryclass&lt;br /&gt;
|0x82da&lt;br /&gt;
|0x80f5&lt;br /&gt;
|-&lt;br /&gt;
|beginlocationselection&lt;br /&gt;
|0x82db&lt;br /&gt;
|0x80f6&lt;br /&gt;
|-&lt;br /&gt;
|endlocationselection&lt;br /&gt;
|0x82dc&lt;br /&gt;
|0x80f7&lt;br /&gt;
|-&lt;br /&gt;
|disableweapons&lt;br /&gt;
|0x82dd&lt;br /&gt;
|0x80f8&lt;br /&gt;
|-&lt;br /&gt;
|enableweapons&lt;br /&gt;
|0x82de&lt;br /&gt;
|0x80f9&lt;br /&gt;
|-&lt;br /&gt;
|disableoffhandweapons&lt;br /&gt;
|0x82df&lt;br /&gt;
|0x80fa&lt;br /&gt;
|-&lt;br /&gt;
|enableoffhandweapons&lt;br /&gt;
|0x82e0&lt;br /&gt;
|0x80fb&lt;br /&gt;
|-&lt;br /&gt;
|disableweaponswitch&lt;br /&gt;
|0x82e1&lt;br /&gt;
|0x80fc&lt;br /&gt;
|-&lt;br /&gt;
|enableweaponswitch&lt;br /&gt;
|0x82e2&lt;br /&gt;
|0x80fd&lt;br /&gt;
|-&lt;br /&gt;
|openpopupmenu&lt;br /&gt;
|0x82e3&lt;br /&gt;
|0x80fe&lt;br /&gt;
|-&lt;br /&gt;
|openpopupmenunomouse&lt;br /&gt;
|0x82e4&lt;br /&gt;
|0x80ff&lt;br /&gt;
|-&lt;br /&gt;
|closepopupmenu&lt;br /&gt;
|0x82e5&lt;br /&gt;
|0x8100&lt;br /&gt;
|-&lt;br /&gt;
|openmenu&lt;br /&gt;
|0x82e6&lt;br /&gt;
|0x8101&lt;br /&gt;
|-&lt;br /&gt;
|closemenu&lt;br /&gt;
|0x82e7&lt;br /&gt;
|0x8102&lt;br /&gt;
|-&lt;br /&gt;
|freezecontrols&lt;br /&gt;
|0x82e9&lt;br /&gt;
|0x8104&lt;br /&gt;
|-&lt;br /&gt;
|disableusability&lt;br /&gt;
|0x82ea&lt;br /&gt;
|0x8105&lt;br /&gt;
|-&lt;br /&gt;
|enableusability&lt;br /&gt;
|0x82eb&lt;br /&gt;
|0x8106&lt;br /&gt;
|-&lt;br /&gt;
|setwhizbyspreads&lt;br /&gt;
|0x82ec&lt;br /&gt;
|0x8107&lt;br /&gt;
|-&lt;br /&gt;
|setwhizbyradii&lt;br /&gt;
|0x82ed&lt;br /&gt;
|0x8108&lt;br /&gt;
|-&lt;br /&gt;
|setreverb&lt;br /&gt;
|0x82ee&lt;br /&gt;
|0x8109&lt;br /&gt;
|-&lt;br /&gt;
|deactivatereverb&lt;br /&gt;
|0x82ef&lt;br /&gt;
|0x810a&lt;br /&gt;
|-&lt;br /&gt;
|setvolmod&lt;br /&gt;
|0x82f0&lt;br /&gt;
|0x810b&lt;br /&gt;
|-&lt;br /&gt;
|setchannelvolume&lt;br /&gt;
|0x82f1&lt;br /&gt;
|0x810c&lt;br /&gt;
|-&lt;br /&gt;
|setchannelvolumes&lt;br /&gt;
|0x82b8&lt;br /&gt;
|0x810d&lt;br /&gt;
|-&lt;br /&gt;
|deactivatechannelvolumes&lt;br /&gt;
|0x82b9&lt;br /&gt;
|0x810e&lt;br /&gt;
|-&lt;br /&gt;
|playlocalsound&lt;br /&gt;
|0x82ba&lt;br /&gt;
|0x810f&lt;br /&gt;
|-&lt;br /&gt;
|stoplocalsound&lt;br /&gt;
|0x82bb&lt;br /&gt;
|0x8110&lt;br /&gt;
|-&lt;br /&gt;
|setweaponammoclip&lt;br /&gt;
|0x82bc&lt;br /&gt;
|0x8111&lt;br /&gt;
|-&lt;br /&gt;
|setweaponammostock&lt;br /&gt;
|0x82bd&lt;br /&gt;
|0x8112&lt;br /&gt;
|-&lt;br /&gt;
|getweaponammoclip&lt;br /&gt;
|0x82be&lt;br /&gt;
|0x8113&lt;br /&gt;
|-&lt;br /&gt;
|getweaponammostock&lt;br /&gt;
|0x82bf&lt;br /&gt;
|0x8114&lt;br /&gt;
|-&lt;br /&gt;
|anyammoforweaponmodes&lt;br /&gt;
|0x82c0&lt;br /&gt;
|0x8115&lt;br /&gt;
|-&lt;br /&gt;
|setclientdvar&lt;br /&gt;
|0x82c1&lt;br /&gt;
|0x8116&lt;br /&gt;
|-&lt;br /&gt;
|setclientdvars&lt;br /&gt;
|0x82c2&lt;br /&gt;
|0x8117&lt;br /&gt;
|-&lt;br /&gt;
|allowads&lt;br /&gt;
|0x82c3&lt;br /&gt;
|0x8118&lt;br /&gt;
|-&lt;br /&gt;
|allowjump&lt;br /&gt;
|0x82c4&lt;br /&gt;
|0x8119&lt;br /&gt;
|-&lt;br /&gt;
|allowsprint&lt;br /&gt;
|0x82c5&lt;br /&gt;
|0x811a&lt;br /&gt;
|-&lt;br /&gt;
|setspreadoverride&lt;br /&gt;
|0x82c6&lt;br /&gt;
|0x811b&lt;br /&gt;
|-&lt;br /&gt;
|resetspreadoverride&lt;br /&gt;
|0x82c7&lt;br /&gt;
|0x811c&lt;br /&gt;
|-&lt;br /&gt;
|setaimspreadmovementscale&lt;br /&gt;
|0x82c8&lt;br /&gt;
|0x811d&lt;br /&gt;
|-&lt;br /&gt;
|setactionslot&lt;br /&gt;
|0x82c9&lt;br /&gt;
|0x811e&lt;br /&gt;
|-&lt;br /&gt;
|setviewkickscale&lt;br /&gt;
|0x82ca&lt;br /&gt;
|0x811f&lt;br /&gt;
|-&lt;br /&gt;
|getviewkickscale&lt;br /&gt;
|0x82cb&lt;br /&gt;
|0x8120&lt;br /&gt;
|-&lt;br /&gt;
|getweaponslistall&lt;br /&gt;
|0x82cc&lt;br /&gt;
|0x8121&lt;br /&gt;
|-&lt;br /&gt;
|getweaponslistprimaries&lt;br /&gt;
|0x82cd&lt;br /&gt;
|0x8122&lt;br /&gt;
|-&lt;br /&gt;
|getweaponslistoffhands&lt;br /&gt;
|0x8296&lt;br /&gt;
|0x8123&lt;br /&gt;
|-&lt;br /&gt;
|getweaponslistitems&lt;br /&gt;
|0x8297&lt;br /&gt;
|0x8124&lt;br /&gt;
|-&lt;br /&gt;
|getweaponslistexclusives&lt;br /&gt;
|0x8298&lt;br /&gt;
|0x8125&lt;br /&gt;
|-&lt;br /&gt;
|getweaponslist&lt;br /&gt;
|0x8299&lt;br /&gt;
|0x8126&lt;br /&gt;
|-&lt;br /&gt;
|canplayerplacesentry&lt;br /&gt;
|0x829a&lt;br /&gt;
|0x8127&lt;br /&gt;
|-&lt;br /&gt;
|canplayerplacetank&lt;br /&gt;
|0x829b&lt;br /&gt;
|0x8128&lt;br /&gt;
|-&lt;br /&gt;
|visionsetnakedforplayer&lt;br /&gt;
|0x829c&lt;br /&gt;
|0x8129&lt;br /&gt;
|-&lt;br /&gt;
|visionsetnightforplayer&lt;br /&gt;
|0x829d&lt;br /&gt;
|0x812a&lt;br /&gt;
|-&lt;br /&gt;
|visionsetmissilecamforplayer&lt;br /&gt;
|0x829e&lt;br /&gt;
|0x812b&lt;br /&gt;
|-&lt;br /&gt;
|visionsetthermalforplayer&lt;br /&gt;
|0x829f&lt;br /&gt;
|0x812c&lt;br /&gt;
|-&lt;br /&gt;
|visionsetpainforplayer&lt;br /&gt;
|0x82a0&lt;br /&gt;
|0x812d&lt;br /&gt;
|-&lt;br /&gt;
|setblurforplayer&lt;br /&gt;
|0x82a1&lt;br /&gt;
|0x812e&lt;br /&gt;
|-&lt;br /&gt;
|getplayerweaponmodel&lt;br /&gt;
|0x82a2&lt;br /&gt;
|0x812f&lt;br /&gt;
|-&lt;br /&gt;
|getplayerknifemodel&lt;br /&gt;
|0x82a3&lt;br /&gt;
|0x8130&lt;br /&gt;
|-&lt;br /&gt;
|updateplayermodelwithweapons&lt;br /&gt;
|0x82a4&lt;br /&gt;
|0x8131&lt;br /&gt;
|-&lt;br /&gt;
|notifyonplayercommand&lt;br /&gt;
|0x82a5&lt;br /&gt;
|0x8132&lt;br /&gt;
|-&lt;br /&gt;
|canmantle&lt;br /&gt;
|0x82a6&lt;br /&gt;
|0x8133&lt;br /&gt;
|-&lt;br /&gt;
|forcemantle&lt;br /&gt;
|0x82a7&lt;br /&gt;
|0x8134&lt;br /&gt;
|-&lt;br /&gt;
|ismantling&lt;br /&gt;
|0x82a8&lt;br /&gt;
|0x8135&lt;br /&gt;
|-&lt;br /&gt;
|playfx&lt;br /&gt;
|0x82a9&lt;br /&gt;
|0x8136&lt;br /&gt;
|-&lt;br /&gt;
|recoilscaleon&lt;br /&gt;
|0x82aa&lt;br /&gt;
|0x8137&lt;br /&gt;
|-&lt;br /&gt;
|recoilscaleoff&lt;br /&gt;
|0x82ab&lt;br /&gt;
|0x8138&lt;br /&gt;
|-&lt;br /&gt;
|weaponlockstart&lt;br /&gt;
|0x82ac&lt;br /&gt;
|0x8139&lt;br /&gt;
|-&lt;br /&gt;
|weaponlockfinalize&lt;br /&gt;
|0x82ad&lt;br /&gt;
|0x813a&lt;br /&gt;
|-&lt;br /&gt;
|weaponlockfree&lt;br /&gt;
|0x82ae&lt;br /&gt;
|0x813b&lt;br /&gt;
|-&lt;br /&gt;
|weaponlocktargettooclose&lt;br /&gt;
|0x82af&lt;br /&gt;
|0x813c&lt;br /&gt;
|-&lt;br /&gt;
|weaponlocknoclearance&lt;br /&gt;
|0x826e&lt;br /&gt;
|0x813d&lt;br /&gt;
|-&lt;br /&gt;
|visionsyncwithplayer&lt;br /&gt;
|0x826f&lt;br /&gt;
|0x813e&lt;br /&gt;
|-&lt;br /&gt;
|showhudsplash&lt;br /&gt;
|0x8270&lt;br /&gt;
|0x813f&lt;br /&gt;
|-&lt;br /&gt;
|setperk&lt;br /&gt;
|0x8271&lt;br /&gt;
|0x8140&lt;br /&gt;
|-&lt;br /&gt;
|hasperk&lt;br /&gt;
|0x8272&lt;br /&gt;
|0x8141&lt;br /&gt;
|-&lt;br /&gt;
|clearperks&lt;br /&gt;
|0x8273&lt;br /&gt;
|0x8142&lt;br /&gt;
|-&lt;br /&gt;
|unsetperk&lt;br /&gt;
|0x8274&lt;br /&gt;
|0x8143&lt;br /&gt;
|-&lt;br /&gt;
|noclip&lt;br /&gt;
|0x8275&lt;br /&gt;
|0x8144&lt;br /&gt;
|-&lt;br /&gt;
|ufo&lt;br /&gt;
|0x8276&lt;br /&gt;
|0x8145&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- script ent --&amp;gt;&lt;br /&gt;
|moveto&lt;br /&gt;
|0x8277&lt;br /&gt;
|0x8146&lt;br /&gt;
|-&lt;br /&gt;
|movex&lt;br /&gt;
|0x8278&lt;br /&gt;
|0x8147&lt;br /&gt;
|-&lt;br /&gt;
|movey&lt;br /&gt;
|0x8279&lt;br /&gt;
|0x8148&lt;br /&gt;
|-&lt;br /&gt;
|movez&lt;br /&gt;
|0x827A&lt;br /&gt;
|0x8149&lt;br /&gt;
|-&lt;br /&gt;
|movegravity&lt;br /&gt;
|0x827B&lt;br /&gt;
|0x814A&lt;br /&gt;
|-&lt;br /&gt;
|moveslide&lt;br /&gt;
|0x827C&lt;br /&gt;
|0x814B&lt;br /&gt;
|-&lt;br /&gt;
|stopmoveslide&lt;br /&gt;
|0x827D&lt;br /&gt;
|0x814C&lt;br /&gt;
|-&lt;br /&gt;
|rotateto&lt;br /&gt;
|0x827E&lt;br /&gt;
|0x814D&lt;br /&gt;
|-&lt;br /&gt;
|rotatepitch&lt;br /&gt;
|0x827F&lt;br /&gt;
|0x814E&lt;br /&gt;
|-&lt;br /&gt;
|rotateyaw&lt;br /&gt;
|0x8280&lt;br /&gt;
|0x814F&lt;br /&gt;
|-&lt;br /&gt;
|rotateroll&lt;br /&gt;
|0x8281&lt;br /&gt;
|0x8150&lt;br /&gt;
|-&lt;br /&gt;
|addpitch&lt;br /&gt;
|0x8282&lt;br /&gt;
|0x8151&lt;br /&gt;
|-&lt;br /&gt;
|addyaw&lt;br /&gt;
|0x8283&lt;br /&gt;
|0x8152&lt;br /&gt;
|-&lt;br /&gt;
|addroll&lt;br /&gt;
|0x8284&lt;br /&gt;
|0x8153&lt;br /&gt;
|-&lt;br /&gt;
|vibrate&lt;br /&gt;
|0x8285&lt;br /&gt;
|0x8154&lt;br /&gt;
|-&lt;br /&gt;
|rotatevelocity&lt;br /&gt;
|0x8286&lt;br /&gt;
|0x8155&lt;br /&gt;
|-&lt;br /&gt;
|solid&lt;br /&gt;
|0x8287&lt;br /&gt;
|0x8156&lt;br /&gt;
|-&lt;br /&gt;
|notsolid&lt;br /&gt;
|0x8288&lt;br /&gt;
|0x8157&lt;br /&gt;
|-&lt;br /&gt;
|setcandamage&lt;br /&gt;
|0x8289&lt;br /&gt;
|0x8158&lt;br /&gt;
|-&lt;br /&gt;
|setcanradiusdamage&lt;br /&gt;
|0x828A&lt;br /&gt;
|0x8159&lt;br /&gt;
|-&lt;br /&gt;
|physicslaunchclient&lt;br /&gt;
|0x828B&lt;br /&gt;
|0x815A&lt;br /&gt;
|-&lt;br /&gt;
|physicslaunchserver&lt;br /&gt;
|0x8247&lt;br /&gt;
|0x815B&lt;br /&gt;
|-&lt;br /&gt;
|physicslaunchserveritem&lt;br /&gt;
|0x8248&lt;br /&gt;
|0x815C&lt;br /&gt;
|-&lt;br /&gt;
|clonebrushmodeltoscriptmodel&lt;br /&gt;
|0x8249&lt;br /&gt;
|0x815D&lt;br /&gt;
|-&lt;br /&gt;
|scriptmodelplayanim&lt;br /&gt;
|0x824A&lt;br /&gt;
|0x815E&lt;br /&gt;
|-&lt;br /&gt;
|scriptmodelclearanim&lt;br /&gt;
|0x824B&lt;br /&gt;
|0x815F&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- vehicle --&amp;gt;&lt;br /&gt;
|vehicle_teleport&lt;br /&gt;
|0x824C&lt;br /&gt;
|0x8160&lt;br /&gt;
|-&lt;br /&gt;
|attachpath&lt;br /&gt;
|0x824D&lt;br /&gt;
|0x8161&lt;br /&gt;
|-&lt;br /&gt;
|getattachpos&lt;br /&gt;
|0x824E&lt;br /&gt;
|0x8162&lt;br /&gt;
|-&lt;br /&gt;
|startpath&lt;br /&gt;
|0x824F&lt;br /&gt;
|0x8163&lt;br /&gt;
|-&lt;br /&gt;
|setswitchnode&lt;br /&gt;
|0x8250&lt;br /&gt;
|0x8164&lt;br /&gt;
|-&lt;br /&gt;
|setwaitspeed&lt;br /&gt;
|0x8251&lt;br /&gt;
|0x8165&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_finishdamage&lt;br /&gt;
|0x8252&lt;br /&gt;
|0x8166&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_setspeed&lt;br /&gt;
|0x8253&lt;br /&gt;
|0x8167&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_setspeedimmediate&lt;br /&gt;
|0x8254&lt;br /&gt;
|0x8168&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_rotateyaw&lt;br /&gt;
|0x8255&lt;br /&gt;
|0x8169&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_getspeed&lt;br /&gt;
|0x8256&lt;br /&gt;
|0x816a&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_getvelocity&lt;br /&gt;
|0x8257&lt;br /&gt;
|0x816b&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_getbodyvelocity&lt;br /&gt;
|0x8258&lt;br /&gt;
|0x816c&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_getsteering&lt;br /&gt;
|0x8259&lt;br /&gt;
|0x816d&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_getthrottle&lt;br /&gt;
|0x825A&lt;br /&gt;
|0x816e&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_turnengineoff&lt;br /&gt;
|0x825B&lt;br /&gt;
|0x816f&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_turnengineon&lt;br /&gt;
|0x825C&lt;br /&gt;
|0x8170&lt;br /&gt;
|-&lt;br /&gt;
|getgoalspeedmph&lt;br /&gt;
|0x825D&lt;br /&gt;
|0x8171&lt;br /&gt;
|-&lt;br /&gt;
|setacceleration&lt;br /&gt;
|0x825E&lt;br /&gt;
|0x8172&lt;br /&gt;
|-&lt;br /&gt;
|setdeceleration&lt;br /&gt;
|0x825F&lt;br /&gt;
|0x8173&lt;br /&gt;
|-&lt;br /&gt;
|resumespeed&lt;br /&gt;
|0x8260&lt;br /&gt;
|0x8174&lt;br /&gt;
|-&lt;br /&gt;
|setyawspeed&lt;br /&gt;
|0x8261&lt;br /&gt;
|0x8175&lt;br /&gt;
|-&lt;br /&gt;
|setyawspeedbyname&lt;br /&gt;
|0x8262&lt;br /&gt;
|0x8176&lt;br /&gt;
|-&lt;br /&gt;
|setmaxpitchroll&lt;br /&gt;
|0x8263&lt;br /&gt;
|0x8177&lt;br /&gt;
|-&lt;br /&gt;
|setairresistance&lt;br /&gt;
|0x8264&lt;br /&gt;
|0x8178&lt;br /&gt;
|-&lt;br /&gt;
|setturningability&lt;br /&gt;
|0x8265&lt;br /&gt;
|0x8179&lt;br /&gt;
|-&lt;br /&gt;
|setjitterparams&lt;br /&gt;
|0x8224&lt;br /&gt;
|0x817a&lt;br /&gt;
|-&lt;br /&gt;
|sethoverparams&lt;br /&gt;
|0x8225&lt;br /&gt;
|0x817b&lt;br /&gt;
|-&lt;br /&gt;
|joltbody&lt;br /&gt;
|0x8226&lt;br /&gt;
|0x817c&lt;br /&gt;
|-&lt;br /&gt;
|freevehicle&lt;br /&gt;
|0x8227&lt;br /&gt;
|0x817d&lt;br /&gt;
|-&lt;br /&gt;
|getwheelsurface&lt;br /&gt;
|0x8228&lt;br /&gt;
|0x817e&lt;br /&gt;
|-&lt;br /&gt;
|getvehicleowner&lt;br /&gt;
|0x8229&lt;br /&gt;
|0x817f&lt;br /&gt;
|-&lt;br /&gt;
|setvehiclelookattext&lt;br /&gt;
|0x822A&lt;br /&gt;
|0x8180&lt;br /&gt;
|-&lt;br /&gt;
|setvehicleteam&lt;br /&gt;
|0x822B&lt;br /&gt;
|0x8181&lt;br /&gt;
|-&lt;br /&gt;
|setneargoalnotifydist&lt;br /&gt;
|0x822C&lt;br /&gt;
|0x8182&lt;br /&gt;
|-&lt;br /&gt;
|setvehgoalpos&lt;br /&gt;
|0x822D&lt;br /&gt;
|0x8183&lt;br /&gt;
|-&lt;br /&gt;
|setgoalyaw&lt;br /&gt;
|0x822E&lt;br /&gt;
|0x8184&lt;br /&gt;
|-&lt;br /&gt;
|cleargoalyaw&lt;br /&gt;
|0x822F&lt;br /&gt;
|0x8185&lt;br /&gt;
|-&lt;br /&gt;
|settargetyaw&lt;br /&gt;
|0x8230&lt;br /&gt;
|0x8186&lt;br /&gt;
|-&lt;br /&gt;
|cleartargetyaw&lt;br /&gt;
|0x8231&lt;br /&gt;
|0x8187&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_helisetai&lt;br /&gt;
|0x8232&lt;br /&gt;
|0x8188&lt;br /&gt;
|-&lt;br /&gt;
|setturrettargetvec&lt;br /&gt;
|0x8233&lt;br /&gt;
|0x8189&lt;br /&gt;
|-&lt;br /&gt;
|setturrettargetent&lt;br /&gt;
|0x8234&lt;br /&gt;
|0x818a&lt;br /&gt;
|-&lt;br /&gt;
|clearturrettarget&lt;br /&gt;
|0x8235&lt;br /&gt;
|0x818b&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_canturrettargetpoint&lt;br /&gt;
|0x8236&lt;br /&gt;
|0x818c&lt;br /&gt;
|-&lt;br /&gt;
|setlookatent&lt;br /&gt;
|0x8237&lt;br /&gt;
|0x818d&lt;br /&gt;
|-&lt;br /&gt;
|clearlookatent&lt;br /&gt;
|0x8238&lt;br /&gt;
|0x818e&lt;br /&gt;
|-&lt;br /&gt;
|setvehweapon&lt;br /&gt;
|0x8239&lt;br /&gt;
|0x818f&lt;br /&gt;
|-&lt;br /&gt;
|fireweapon&lt;br /&gt;
|0x823A&lt;br /&gt;
|0x8190&lt;br /&gt;
|-&lt;br /&gt;
|vehicleturretcontrolon&lt;br /&gt;
|0x823B&lt;br /&gt;
|0x8191&lt;br /&gt;
|-&lt;br /&gt;
|vehicleturretcontroloff&lt;br /&gt;
|0x8200&lt;br /&gt;
|0x8192&lt;br /&gt;
|-&lt;br /&gt;
|isturretready&lt;br /&gt;
|0x8201&lt;br /&gt;
|0x8193&lt;br /&gt;
|-&lt;br /&gt;
|vehicledriveto&lt;br /&gt;
|0x8202&lt;br /&gt;
|0x8194&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_dospawn&lt;br /&gt;
|0x8203&lt;br /&gt;
|0x8195&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_isphysveh&lt;br /&gt;
|0x8204&lt;br /&gt;
|0x8196&lt;br /&gt;
|-&lt;br /&gt;
|vehphys_crash&lt;br /&gt;
|0x8205&lt;br /&gt;
|0x8197&lt;br /&gt;
|-&lt;br /&gt;
|vehphys_launch&lt;br /&gt;
|0x8206&lt;br /&gt;
|0x8198&lt;br /&gt;
|-&lt;br /&gt;
|vehphys_disablecrashing&lt;br /&gt;
|0x8207&lt;br /&gt;
|0x8199&lt;br /&gt;
|-&lt;br /&gt;
|vehphys_enablecrashing&lt;br /&gt;
|0x8208&lt;br /&gt;
|0x819a&lt;br /&gt;
|-&lt;br /&gt;
|vehphys_setspeed&lt;br /&gt;
|0x8209&lt;br /&gt;
|0x819b&lt;br /&gt;
|-&lt;br /&gt;
|vehphys_setconveyorbelt&lt;br /&gt;
|0x820A&lt;br /&gt;
|0x819c&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- helicopter --&amp;gt;&lt;br /&gt;
|freehelicopter&lt;br /&gt;
|0x820B&lt;br /&gt;
|0x819D&lt;br /&gt;
|-&lt;br /&gt;
|setdamagestage&lt;br /&gt;
|0x8002&lt;br /&gt;
|0x82F2&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- hud element --&amp;gt;&lt;br /&gt;
|settext&lt;br /&gt;
|0x80b6&lt;br /&gt;
|0x827d&lt;br /&gt;
|-&lt;br /&gt;
|clearalltextafterhudelem&lt;br /&gt;
|0x80b7&lt;br /&gt;
|0x827e&lt;br /&gt;
|-&lt;br /&gt;
|setshader&lt;br /&gt;
|0x80b8&lt;br /&gt;
|0x827f&lt;br /&gt;
|-&lt;br /&gt;
|settargetent&lt;br /&gt;
|0x80b9&lt;br /&gt;
|0x8280&lt;br /&gt;
|-&lt;br /&gt;
|cleartargetent&lt;br /&gt;
|0x80ba&lt;br /&gt;
|0x8281&lt;br /&gt;
|-&lt;br /&gt;
|settimer&lt;br /&gt;
|0x80bb&lt;br /&gt;
|0x8282&lt;br /&gt;
|-&lt;br /&gt;
|settimerup&lt;br /&gt;
|0x80bc&lt;br /&gt;
|0x8283&lt;br /&gt;
|-&lt;br /&gt;
|settimerstatic&lt;br /&gt;
|0x80bd&lt;br /&gt;
|0x8284&lt;br /&gt;
|-&lt;br /&gt;
|settenthstimer&lt;br /&gt;
|0x80be&lt;br /&gt;
|0x8285&lt;br /&gt;
|-&lt;br /&gt;
|settenthstimerup&lt;br /&gt;
|0x80bf&lt;br /&gt;
|0x8286&lt;br /&gt;
|-&lt;br /&gt;
|settenthstimerstatic&lt;br /&gt;
|0x80c0&lt;br /&gt;
|0x8287&lt;br /&gt;
|-&lt;br /&gt;
|setclock&lt;br /&gt;
|0x80c1&lt;br /&gt;
|0x8288&lt;br /&gt;
|-&lt;br /&gt;
|setclockup&lt;br /&gt;
|0x80c2&lt;br /&gt;
|0x8289&lt;br /&gt;
|-&lt;br /&gt;
|setvalue&lt;br /&gt;
|0x80c3&lt;br /&gt;
|0x828a&lt;br /&gt;
|-&lt;br /&gt;
|setwaypoint&lt;br /&gt;
|0x80c4&lt;br /&gt;
|0x828b&lt;br /&gt;
|-&lt;br /&gt;
|rotatingicon&lt;br /&gt;
|0x80c5&lt;br /&gt;
|0x828c&lt;br /&gt;
|-&lt;br /&gt;
|secondaryarrow&lt;br /&gt;
|0x807b&lt;br /&gt;
|0x828d&lt;br /&gt;
|-&lt;br /&gt;
|setwaypointiconoffscreenonly&lt;br /&gt;
|0x807c&lt;br /&gt;
|0x828e&lt;br /&gt;
|-&lt;br /&gt;
|fadeovertime&lt;br /&gt;
|0x807d&lt;br /&gt;
|0x828f&lt;br /&gt;
|-&lt;br /&gt;
|scaleovertime&lt;br /&gt;
|0x807e&lt;br /&gt;
|0x8290&lt;br /&gt;
|-&lt;br /&gt;
|moveovertime&lt;br /&gt;
|0x807f&lt;br /&gt;
|0x8291&lt;br /&gt;
|-&lt;br /&gt;
|reset&lt;br /&gt;
|0x8080&lt;br /&gt;
|0x8292&lt;br /&gt;
|-&lt;br /&gt;
|destroy&lt;br /&gt;
|0x8081&lt;br /&gt;
|0x8293&lt;br /&gt;
|-&lt;br /&gt;
|setpulsefx&lt;br /&gt;
|0x8082&lt;br /&gt;
|0x8294&lt;br /&gt;
|-&lt;br /&gt;
|setplayernamestring&lt;br /&gt;
|0x8083&lt;br /&gt;
|0x8295&lt;br /&gt;
|-&lt;br /&gt;
|changefontscaleovertime&lt;br /&gt;
|N/A&lt;br /&gt;
|0x8296&lt;br /&gt;
|-&lt;br /&gt;
|fadeovertime2&lt;br /&gt;
|0x830b&lt;br /&gt;
|N/A&lt;br /&gt;
|-&lt;br /&gt;
|scaleovertime2&lt;br /&gt;
|0x830c&lt;br /&gt;
|N/A&lt;br /&gt;
|-&lt;br /&gt;
|moveovertime2&lt;br /&gt;
|0x8084&lt;br /&gt;
|N/A&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- client? --&amp;gt;&lt;br /&gt;
|getorigin&lt;br /&gt;
|0x808E&lt;br /&gt;
|0x82a0&lt;br /&gt;
|-&lt;br /&gt;
|useby&lt;br /&gt;
|0x8092&lt;br /&gt;
|0x82a4&lt;br /&gt;
|-&lt;br /&gt;
|playsound&lt;br /&gt;
|0x8093&lt;br /&gt;
|0x82a5&lt;br /&gt;
|-&lt;br /&gt;
|playsoundasmaster&lt;br /&gt;
|0x806E&lt;br /&gt;
|0x82af&lt;br /&gt;
|-&lt;br /&gt;
|playsoundtoteam&lt;br /&gt;
|0x8003&lt;br /&gt;
|0x82f3&lt;br /&gt;
|-&lt;br /&gt;
|playsoundtoplayer&lt;br /&gt;
|0x8004&lt;br /&gt;
|0x82f4&lt;br /&gt;
|-&lt;br /&gt;
|playloopsound&lt;br /&gt;
|0x806F&lt;br /&gt;
|0x82b0&lt;br /&gt;
|-&lt;br /&gt;
|getnormalhealth&lt;br /&gt;
|0x8074&lt;br /&gt;
|0x82b5&lt;br /&gt;
|-&lt;br /&gt;
|setnormalhealth&lt;br /&gt;
|0x804C&lt;br /&gt;
|0x82b6&lt;br /&gt;
|-&lt;br /&gt;
|show&lt;br /&gt;
|0x804F&lt;br /&gt;
|0x82b9&lt;br /&gt;
|-&lt;br /&gt;
|hide&lt;br /&gt;
|0x8050&lt;br /&gt;
|0x82ba&lt;br /&gt;
|-&lt;br /&gt;
|playerhide&lt;br /&gt;
|0x8005&lt;br /&gt;
|0x82f5&lt;br /&gt;
|-&lt;br /&gt;
|showtoplayer&lt;br /&gt;
|0x8006&lt;br /&gt;
|0x82f6&lt;br /&gt;
|-&lt;br /&gt;
|enableplayeruse&lt;br /&gt;
|0x8007&lt;br /&gt;
|0x82f7&lt;br /&gt;
|-&lt;br /&gt;
|disableplayeruse&lt;br /&gt;
|0x8008&lt;br /&gt;
|0x82f8&lt;br /&gt;
|-&lt;br /&gt;
|unknown&lt;br /&gt;
|0x830A&lt;br /&gt;
|0x830a&lt;br /&gt;
|-&lt;br /&gt;
|makescrambler&lt;br /&gt;
|0x8009&lt;br /&gt;
|0x82f9&lt;br /&gt;
|-&lt;br /&gt;
|makeportableradar&lt;br /&gt;
|0x800A&lt;br /&gt;
|0x82fa&lt;br /&gt;
|-&lt;br /&gt;
|maketrophysystem&lt;br /&gt;
|0x800B&lt;br /&gt;
|0x82fb&lt;br /&gt;
|-&lt;br /&gt;
|setmode&lt;br /&gt;
|0x8060&lt;br /&gt;
|0x82ca&lt;br /&gt;
|-&lt;br /&gt;
|getmode&lt;br /&gt;
|0x8061&lt;br /&gt;
|0x82cb&lt;br /&gt;
|-&lt;br /&gt;
|placespawnpoint&lt;br /&gt;
|0x800C&lt;br /&gt;
|0x82fc&lt;br /&gt;
|-&lt;br /&gt;
|setteamfortrigger&lt;br /&gt;
|0x800D&lt;br /&gt;
|0x82fd&lt;br /&gt;
|-&lt;br /&gt;
|clientclaimtrigger&lt;br /&gt;
|0x800E&lt;br /&gt;
|0x82fe&lt;br /&gt;
|-&lt;br /&gt;
|clientreleasetrigger&lt;br /&gt;
|0x800F&lt;br /&gt;
|0x82ff&lt;br /&gt;
|-&lt;br /&gt;
|releaseclaimedtrigger&lt;br /&gt;
|0x8010&lt;br /&gt;
|0x8300&lt;br /&gt;
|-&lt;br /&gt;
|isusingonlinedataoffline&lt;br /&gt;
|0x8011&lt;br /&gt;
|0x8301&lt;br /&gt;
|-&lt;br /&gt;
|getrestedtime&lt;br /&gt;
|0x8012&lt;br /&gt;
|0x8302&lt;br /&gt;
|-&lt;br /&gt;
|sendleaderboards&lt;br /&gt;
|0x8013&lt;br /&gt;
|0x8303&lt;br /&gt;
|-&lt;br /&gt;
|logstring&lt;br /&gt;
|0x8020&lt;br /&gt;
|0x82ec&lt;br /&gt;
|-&lt;br /&gt;
|isonladder&lt;br /&gt;
|0x8014&lt;br /&gt;
|0x8304&lt;br /&gt;
|-&lt;br /&gt;
|startragdoll&lt;br /&gt;
|0x801E&lt;br /&gt;
|0x82ea&lt;br /&gt;
|-&lt;br /&gt;
|getcorpseanim&lt;br /&gt;
|0x8015&lt;br /&gt;
|0x8305&lt;br /&gt;
|-&lt;br /&gt;
|playerforcedeathanim&lt;br /&gt;
|0x8016&lt;br /&gt;
|0x8306&lt;br /&gt;
|-&lt;br /&gt;
|startac130&lt;br /&gt;
|0x8307&lt;br /&gt;
|0x8307&lt;br /&gt;
|-&lt;br /&gt;
|stopac130&lt;br /&gt;
|0x8308&lt;br /&gt;
|0x8308&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Function List ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!rowspan=&amp;quot;2&amp;quot;|Function&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|MW3&lt;br /&gt;
|-&lt;br /&gt;
!PC ID&lt;br /&gt;
!PS3/XBOX ID&lt;br /&gt;
&amp;lt;!-- funcion list 1 --&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|createprintchannel&lt;br /&gt;
|N/A&lt;br /&gt;
|0x1&lt;br /&gt;
|-&lt;br /&gt;
|setprintchannel&lt;br /&gt;
|0xe&lt;br /&gt;
|0x2&lt;br /&gt;
|-&lt;br /&gt;
|print&lt;br /&gt;
|0xf&lt;br /&gt;
|0x3&lt;br /&gt;
|-&lt;br /&gt;
|println&lt;br /&gt;
|0x10&lt;br /&gt;
|0x4&lt;br /&gt;
|-&lt;br /&gt;
|print3d&lt;br /&gt;
|0x11&lt;br /&gt;
|0x5&lt;br /&gt;
|-&lt;br /&gt;
|line&lt;br /&gt;
|0x12&lt;br /&gt;
|0x6&lt;br /&gt;
|-&lt;br /&gt;
|precacheturret&lt;br /&gt;
|N/A&lt;br /&gt;
|0x7&lt;br /&gt;
|-&lt;br /&gt;
|getweaponarray&lt;br /&gt;
|N/A&lt;br /&gt;
|0x8&lt;br /&gt;
|-&lt;br /&gt;
|spawnturret&lt;br /&gt;
|0x13&lt;br /&gt;
|0x9&lt;br /&gt;
|-&lt;br /&gt;
|canspawnturret&lt;br /&gt;
|0x14&lt;br /&gt;
|0xa&lt;br /&gt;
|-&lt;br /&gt;
|assert&lt;br /&gt;
|0x15&lt;br /&gt;
|0xb&lt;br /&gt;
|-&lt;br /&gt;
|assertex&lt;br /&gt;
|0x26&lt;br /&gt;
|0xc&lt;br /&gt;
|-&lt;br /&gt;
|assertmsg&lt;br /&gt;
|0x27&lt;br /&gt;
|0xd&lt;br /&gt;
|-&lt;br /&gt;
|isdefined&lt;br /&gt;
|0x28&lt;br /&gt;
|0xe&lt;br /&gt;
|-&lt;br /&gt;
|isstring&lt;br /&gt;
|0x29&lt;br /&gt;
|0xf&lt;br /&gt;
|-&lt;br /&gt;
|setdvar&lt;br /&gt;
|0x2a&lt;br /&gt;
|0x10&lt;br /&gt;
|-&lt;br /&gt;
|setdynamicdvar&lt;br /&gt;
|0x2b&lt;br /&gt;
|0x11&lt;br /&gt;
|-&lt;br /&gt;
|setdvarifuninitialized&lt;br /&gt;
|0x2c&lt;br /&gt;
|0x12&lt;br /&gt;
|-&lt;br /&gt;
|setdevdvar&lt;br /&gt;
|0x2d&lt;br /&gt;
|0x13&lt;br /&gt;
|-&lt;br /&gt;
|setdevdvarifuninitialized&lt;br /&gt;
|0x2e&lt;br /&gt;
|0x14&lt;br /&gt;
|-&lt;br /&gt;
|getdvar&lt;br /&gt;
|0x2f&lt;br /&gt;
|0x15&lt;br /&gt;
|-&lt;br /&gt;
|getdvarint&lt;br /&gt;
|0x30&lt;br /&gt;
|0x16&lt;br /&gt;
|-&lt;br /&gt;
|getdvarfloat&lt;br /&gt;
|0x31&lt;br /&gt;
|0x17&lt;br /&gt;
|-&lt;br /&gt;
|getdvarvector&lt;br /&gt;
|0x32&lt;br /&gt;
|0x18&lt;br /&gt;
|-&lt;br /&gt;
|gettime&lt;br /&gt;
|0x33&lt;br /&gt;
|0x19&lt;br /&gt;
|-&lt;br /&gt;
|getentbynum&lt;br /&gt;
|0x34&lt;br /&gt;
|0x1a&lt;br /&gt;
|-&lt;br /&gt;
|getweaponmodel&lt;br /&gt;
|0x35&lt;br /&gt;
|0x1b&lt;br /&gt;
|-&lt;br /&gt;
|getweaponhidetags&lt;br /&gt;
|0x51&lt;br /&gt;
|0x1c&lt;br /&gt;
|-&lt;br /&gt;
|getanimlength&lt;br /&gt;
|0x52&lt;br /&gt;
|0x1d&lt;br /&gt;
|-&lt;br /&gt;
|animhasnotetrack&lt;br /&gt;
|0x53&lt;br /&gt;
|0x1e&lt;br /&gt;
|-&lt;br /&gt;
|getnotetracktimes&lt;br /&gt;
|0x54&lt;br /&gt;
|0x1f&lt;br /&gt;
|-&lt;br /&gt;
|spawn&lt;br /&gt;
|0x55&lt;br /&gt;
|0x20&lt;br /&gt;
|-&lt;br /&gt;
|spawnloopsound&lt;br /&gt;
|0x56&lt;br /&gt;
|0x21&lt;br /&gt;
|-&lt;br /&gt;
|bullettrace&lt;br /&gt;
|0x57&lt;br /&gt;
|0x22&lt;br /&gt;
|-&lt;br /&gt;
|bullettracepassed&lt;br /&gt;
|0x58&lt;br /&gt;
|0x23&lt;br /&gt;
|-&lt;br /&gt;
|sighttracepassed&lt;br /&gt;
|0x74&lt;br /&gt;
|0x24&lt;br /&gt;
|-&lt;br /&gt;
|physicstrace&lt;br /&gt;
|0x75&lt;br /&gt;
|0x25&lt;br /&gt;
|-&lt;br /&gt;
|physicstracenormal&lt;br /&gt;
|0x76&lt;br /&gt;
|0x26&lt;br /&gt;
|-&lt;br /&gt;
|playerphysicstrace&lt;br /&gt;
|0x77&lt;br /&gt;
|0x27&lt;br /&gt;
|-&lt;br /&gt;
|getgroundposition&lt;br /&gt;
|0x78&lt;br /&gt;
|0x28&lt;br /&gt;
|-&lt;br /&gt;
|getmovedelta&lt;br /&gt;
|0x79&lt;br /&gt;
|0x29&lt;br /&gt;
|-&lt;br /&gt;
|getangledelta&lt;br /&gt;
|0x7a&lt;br /&gt;
|0x2a&lt;br /&gt;
|-&lt;br /&gt;
|getnorthyaw&lt;br /&gt;
|0x7b&lt;br /&gt;
|0x2b&lt;br /&gt;
|-&lt;br /&gt;
|setnorthyaw&lt;br /&gt;
|0x96&lt;br /&gt;
|0x2c&lt;br /&gt;
|-&lt;br /&gt;
|setslowmotion&lt;br /&gt;
|0x97&lt;br /&gt;
|0x2d&lt;br /&gt;
|-&lt;br /&gt;
|randomint&lt;br /&gt;
|0x98&lt;br /&gt;
|0x2e&lt;br /&gt;
|-&lt;br /&gt;
|randomfloat&lt;br /&gt;
|0x99&lt;br /&gt;
|0x2f&lt;br /&gt;
|-&lt;br /&gt;
|randomintrange&lt;br /&gt;
|0x9a&lt;br /&gt;
|0x30&lt;br /&gt;
|-&lt;br /&gt;
|randomfloatrange&lt;br /&gt;
|0x9b&lt;br /&gt;
|0x31&lt;br /&gt;
|-&lt;br /&gt;
|sin&lt;br /&gt;
|0x9c&lt;br /&gt;
|0x32&lt;br /&gt;
|-&lt;br /&gt;
|cos&lt;br /&gt;
|0x9d&lt;br /&gt;
|0x33&lt;br /&gt;
|-&lt;br /&gt;
|tan&lt;br /&gt;
|0x9e&lt;br /&gt;
|0x34&lt;br /&gt;
|-&lt;br /&gt;
|asin&lt;br /&gt;
|0x9f&lt;br /&gt;
|0x35&lt;br /&gt;
|-&lt;br /&gt;
|acos&lt;br /&gt;
|0xa0&lt;br /&gt;
|0x36&lt;br /&gt;
|-&lt;br /&gt;
|atan&lt;br /&gt;
|0xa1&lt;br /&gt;
|0x37&lt;br /&gt;
|-&lt;br /&gt;
|int&lt;br /&gt;
|0xa2&lt;br /&gt;
|0x38&lt;br /&gt;
|-&lt;br /&gt;
|float&lt;br /&gt;
|0xa3&lt;br /&gt;
|0x39&lt;br /&gt;
|-&lt;br /&gt;
|abs&lt;br /&gt;
|0xa4&lt;br /&gt;
|0x3a&lt;br /&gt;
|-&lt;br /&gt;
|min&lt;br /&gt;
|0xa5&lt;br /&gt;
|0x3b&lt;br /&gt;
|-&lt;br /&gt;
|max&lt;br /&gt;
|0xc6&lt;br /&gt;
|0x3c&lt;br /&gt;
|-&lt;br /&gt;
|floor&lt;br /&gt;
|0xc7&lt;br /&gt;
|0x3d&lt;br /&gt;
|-&lt;br /&gt;
|ceil&lt;br /&gt;
|0xc8&lt;br /&gt;
|0x3e&lt;br /&gt;
|-&lt;br /&gt;
|exp&lt;br /&gt;
|0xc9&lt;br /&gt;
|0x3f&lt;br /&gt;
|-&lt;br /&gt;
|log&lt;br /&gt;
|0xca&lt;br /&gt;
|0x40&lt;br /&gt;
|-&lt;br /&gt;
|sqrt&lt;br /&gt;
|0xcb&lt;br /&gt;
|0x41&lt;br /&gt;
|-&lt;br /&gt;
|squared&lt;br /&gt;
|0xcc&lt;br /&gt;
|0x42&lt;br /&gt;
|-&lt;br /&gt;
|clamp&lt;br /&gt;
|0xcd&lt;br /&gt;
|0x43&lt;br /&gt;
|-&lt;br /&gt;
|angleclamp&lt;br /&gt;
|0xce&lt;br /&gt;
|0x44&lt;br /&gt;
|-&lt;br /&gt;
|angleclamp180&lt;br /&gt;
|0xcf&lt;br /&gt;
|0x45&lt;br /&gt;
|-&lt;br /&gt;
|vectorfromlinetopoint&lt;br /&gt;
|0xd0&lt;br /&gt;
|0x46&lt;br /&gt;
|-&lt;br /&gt;
|pointonsegmentnearesttopoint&lt;br /&gt;
|0xd1&lt;br /&gt;
|0x47&lt;br /&gt;
|-&lt;br /&gt;
|distance&lt;br /&gt;
|0xd2&lt;br /&gt;
|0x48&lt;br /&gt;
|-&lt;br /&gt;
|distance2d&lt;br /&gt;
|0xd3&lt;br /&gt;
|0x49&lt;br /&gt;
|-&lt;br /&gt;
|distancesquared&lt;br /&gt;
|0xd4&lt;br /&gt;
|0x4a&lt;br /&gt;
|-&lt;br /&gt;
|length&lt;br /&gt;
|0xd5&lt;br /&gt;
|0x4b&lt;br /&gt;
|-&lt;br /&gt;
|lengthsquared&lt;br /&gt;
|0xd6&lt;br /&gt;
|0x4c&lt;br /&gt;
|-&lt;br /&gt;
|closer&lt;br /&gt;
|0xd7&lt;br /&gt;
|0x4d&lt;br /&gt;
|-&lt;br /&gt;
|vectordot&lt;br /&gt;
|0xd8&lt;br /&gt;
|0x4e&lt;br /&gt;
|-&lt;br /&gt;
|vectornormalize&lt;br /&gt;
|0xf6&lt;br /&gt;
|0x4f&lt;br /&gt;
|-&lt;br /&gt;
|vectortoangles&lt;br /&gt;
|0xf7&lt;br /&gt;
|0x50&lt;br /&gt;
|-&lt;br /&gt;
|vectortoyaw&lt;br /&gt;
|0xf8&lt;br /&gt;
|0x51&lt;br /&gt;
|-&lt;br /&gt;
|vectorlerp&lt;br /&gt;
|0xf9&lt;br /&gt;
|0x52&lt;br /&gt;
|-&lt;br /&gt;
|anglestoup&lt;br /&gt;
|0xfa&lt;br /&gt;
|0x53&lt;br /&gt;
|-&lt;br /&gt;
|anglestoright&lt;br /&gt;
|0xfb&lt;br /&gt;
|0x54&lt;br /&gt;
|-&lt;br /&gt;
|anglestoforward&lt;br /&gt;
|0xfc&lt;br /&gt;
|0x55&lt;br /&gt;
|-&lt;br /&gt;
|combineangles&lt;br /&gt;
|0xfd&lt;br /&gt;
|0x56&lt;br /&gt;
|-&lt;br /&gt;
|transformmove&lt;br /&gt;
|0xfe&lt;br /&gt;
|0x57&lt;br /&gt;
|-&lt;br /&gt;
|issubstr&lt;br /&gt;
|0xff&lt;br /&gt;
|0x58&lt;br /&gt;
|-&lt;br /&gt;
|isendstr&lt;br /&gt;
|0x100&lt;br /&gt;
|0x59&lt;br /&gt;
|-&lt;br /&gt;
|getsubstr&lt;br /&gt;
|0x101&lt;br /&gt;
|0x5a&lt;br /&gt;
|-&lt;br /&gt;
|tolower&lt;br /&gt;
|0x102&lt;br /&gt;
|0x5b&lt;br /&gt;
|-&lt;br /&gt;
|strtok&lt;br /&gt;
|0x103&lt;br /&gt;
|0x5c&lt;br /&gt;
|-&lt;br /&gt;
|stricmp&lt;br /&gt;
|0x104&lt;br /&gt;
|0x5d&lt;br /&gt;
|-&lt;br /&gt;
|ambientplay&lt;br /&gt;
|0x105&lt;br /&gt;
|0x5e&lt;br /&gt;
|-&lt;br /&gt;
|ambientstop&lt;br /&gt;
|0x125&lt;br /&gt;
|0x5f&lt;br /&gt;
|-&lt;br /&gt;
|precachemodel&lt;br /&gt;
|0x126&lt;br /&gt;
|0x60&lt;br /&gt;
|-&lt;br /&gt;
|precacheshellshock&lt;br /&gt;
|0x127&lt;br /&gt;
|0x61&lt;br /&gt;
|-&lt;br /&gt;
|precacheitem&lt;br /&gt;
|0x128&lt;br /&gt;
|0x62&lt;br /&gt;
|-&lt;br /&gt;
|precacheshader&lt;br /&gt;
|0x129&lt;br /&gt;
|0x63&lt;br /&gt;
|-&lt;br /&gt;
|precachestring&lt;br /&gt;
|0x12a&lt;br /&gt;
|0x64&lt;br /&gt;
|-&lt;br /&gt;
|precachemenu&lt;br /&gt;
|0x12b&lt;br /&gt;
|0x65&lt;br /&gt;
|-&lt;br /&gt;
|precacherumble&lt;br /&gt;
|0x12c&lt;br /&gt;
|0x66&lt;br /&gt;
|-&lt;br /&gt;
|precachelocationselector&lt;br /&gt;
|0x12d&lt;br /&gt;
|0x67&lt;br /&gt;
|-&lt;br /&gt;
|precacheleaderboards&lt;br /&gt;
|0x12e&lt;br /&gt;
|0x68&lt;br /&gt;
|-&lt;br /&gt;
|precacheheadicon&lt;br /&gt;
|0x146&lt;br /&gt;
|0xe9&lt;br /&gt;
|-&lt;br /&gt;
|loadfx&lt;br /&gt;
|0x12f&lt;br /&gt;
|0x1c5&lt;br /&gt;
|-&lt;br /&gt;
|playfx&lt;br /&gt;
|0x130&lt;br /&gt;
|0x1c6&lt;br /&gt;
|-&lt;br /&gt;
|unknown&lt;br /&gt;
|N/A&lt;br /&gt;
|0x69&lt;br /&gt;
|-&lt;br /&gt;
|playfxontag&lt;br /&gt;
|0x131&lt;br /&gt;
|0x6a&lt;br /&gt;
|-&lt;br /&gt;
|stopfxontag&lt;br /&gt;
|0x132&lt;br /&gt;
|0x6b&lt;br /&gt;
|-&lt;br /&gt;
|stopfxontag2&lt;br /&gt;
|N/A&lt;br /&gt;
|0x6c&lt;br /&gt;
|-&lt;br /&gt;
|playloopedfx&lt;br /&gt;
|0x133&lt;br /&gt;
|0x6d&lt;br /&gt;
|-&lt;br /&gt;
|spawnfx&lt;br /&gt;
|0x134&lt;br /&gt;
|0x6e&lt;br /&gt;
|-&lt;br /&gt;
|triggerfx&lt;br /&gt;
|0x135&lt;br /&gt;
|0x6f&lt;br /&gt;
|-&lt;br /&gt;
|playfxontagforclients&lt;br /&gt;
|0x136&lt;br /&gt;
|0x70&lt;br /&gt;
|-&lt;br /&gt;
|physicsexplosionsphere&lt;br /&gt;
|0x15a&lt;br /&gt;
|0x71&lt;br /&gt;
|-&lt;br /&gt;
|physicsexplosioncylinder&lt;br /&gt;
|0x15b&lt;br /&gt;
|0x72&lt;br /&gt;
|-&lt;br /&gt;
|physicsjolt&lt;br /&gt;
|0x15c&lt;br /&gt;
|0x73&lt;br /&gt;
|-&lt;br /&gt;
|physicsjitter&lt;br /&gt;
|0x15d&lt;br /&gt;
|0x74&lt;br /&gt;
|-&lt;br /&gt;
|setexpfog&lt;br /&gt;
|0x15e&lt;br /&gt;
|0x75&lt;br /&gt;
|-&lt;br /&gt;
|isexplosivedamagemod&lt;br /&gt;
|0x15f&lt;br /&gt;
|0x76&lt;br /&gt;
|-&lt;br /&gt;
|radiusdamage&lt;br /&gt;
|0x160&lt;br /&gt;
|0x77&lt;br /&gt;
|-&lt;br /&gt;
|setplayerignoreradiusdamage&lt;br /&gt;
|0x161&lt;br /&gt;
|0x78&lt;br /&gt;
|-&lt;br /&gt;
|glassradiusdamage&lt;br /&gt;
|0x162&lt;br /&gt;
|0x79&lt;br /&gt;
|-&lt;br /&gt;
|earthquake&lt;br /&gt;
|0x163&lt;br /&gt;
|0x7a&lt;br /&gt;
|-&lt;br /&gt;
|getnumparts&lt;br /&gt;
|0x164&lt;br /&gt;
|0x7b&lt;br /&gt;
|-&lt;br /&gt;
|getpartname&lt;br /&gt;
|0x182&lt;br /&gt;
|0x7c&lt;br /&gt;
|-&lt;br /&gt;
|weaponfiretime&lt;br /&gt;
|0x183&lt;br /&gt;
|0x7d&lt;br /&gt;
|-&lt;br /&gt;
|weaponclipsize&lt;br /&gt;
|0x184&lt;br /&gt;
|0x7e&lt;br /&gt;
|-&lt;br /&gt;
|weaponisauto&lt;br /&gt;
|0x185&lt;br /&gt;
|0x7f&lt;br /&gt;
|-&lt;br /&gt;
|weaponissemiauto&lt;br /&gt;
|0x186&lt;br /&gt;
|0x80&lt;br /&gt;
|-&lt;br /&gt;
|weaponisboltaction&lt;br /&gt;
|0x187&lt;br /&gt;
|0x81&lt;br /&gt;
|-&lt;br /&gt;
|weaponinheritsperks&lt;br /&gt;
|0x188&lt;br /&gt;
|0x82&lt;br /&gt;
|-&lt;br /&gt;
|weaponburstcount&lt;br /&gt;
|0x189&lt;br /&gt;
|0x83&lt;br /&gt;
|-&lt;br /&gt;
|weapontype&lt;br /&gt;
|0x18a&lt;br /&gt;
|0x84&lt;br /&gt;
|-&lt;br /&gt;
|weaponclass&lt;br /&gt;
|0x18b&lt;br /&gt;
|0x85&lt;br /&gt;
|-&lt;br /&gt;
|weaponinventorytype&lt;br /&gt;
|0x1b5&lt;br /&gt;
|0x86&lt;br /&gt;
|-&lt;br /&gt;
|weaponstartammo&lt;br /&gt;
|0x1b6&lt;br /&gt;
|0x87&lt;br /&gt;
|-&lt;br /&gt;
|weaponmaxammo&lt;br /&gt;
|0x1b7&lt;br /&gt;
|0x88&lt;br /&gt;
|-&lt;br /&gt;
|weaponaltweaponname&lt;br /&gt;
|0x1b8&lt;br /&gt;
|0x89&lt;br /&gt;
|-&lt;br /&gt;
|isweaponcliponly&lt;br /&gt;
|0x1b9&lt;br /&gt;
|0x8a&lt;br /&gt;
|-&lt;br /&gt;
|isweapondetonationtimed&lt;br /&gt;
|0x1ba&lt;br /&gt;
|0x8b&lt;br /&gt;
|-&lt;br /&gt;
|weaponhasthermalscope&lt;br /&gt;
|0x1bb&lt;br /&gt;
|0x8c&lt;br /&gt;
|-&lt;br /&gt;
|getvehiclenode&lt;br /&gt;
|0x1bc&lt;br /&gt;
|0x8d&lt;br /&gt;
|-&lt;br /&gt;
|getvehiclenodearray&lt;br /&gt;
|0x1bd&lt;br /&gt;
|0x8e&lt;br /&gt;
|-&lt;br /&gt;
|getallvehiclenodes&lt;br /&gt;
|0x1be&lt;br /&gt;
|0x8f&lt;br /&gt;
|-&lt;br /&gt;
|getnumvehicles&lt;br /&gt;
|0x1bf&lt;br /&gt;
|0x90&lt;br /&gt;
|-&lt;br /&gt;
|precachevehicle&lt;br /&gt;
|0x1c0&lt;br /&gt;
|0x91&lt;br /&gt;
|-&lt;br /&gt;
|spawnvehicle&lt;br /&gt;
|0x1c1&lt;br /&gt;
|0x92&lt;br /&gt;
|-&lt;br /&gt;
|getarray&lt;br /&gt;
|0x1c2&lt;br /&gt;
|0x93&lt;br /&gt;
|-&lt;br /&gt;
|getspawnerarray&lt;br /&gt;
|0x198&lt;br /&gt;
|0x94&lt;br /&gt;
|-&lt;br /&gt;
|playrumbleonposition&lt;br /&gt;
|0x199&lt;br /&gt;
|0x95&lt;br /&gt;
|-&lt;br /&gt;
|playrumblelooponposition&lt;br /&gt;
|0x19a&lt;br /&gt;
|0x96&lt;br /&gt;
|-&lt;br /&gt;
|stopallrumbles&lt;br /&gt;
|0x19b&lt;br /&gt;
|0x97&lt;br /&gt;
|-&lt;br /&gt;
|soundexists&lt;br /&gt;
|0x19c&lt;br /&gt;
|0x98&lt;br /&gt;
|-&lt;br /&gt;
|openfile&lt;br /&gt;
|0x19d&lt;br /&gt;
|0x99&lt;br /&gt;
|-&lt;br /&gt;
|closefile&lt;br /&gt;
|0x19e&lt;br /&gt;
|0x9a&lt;br /&gt;
|-&lt;br /&gt;
|fprintln&lt;br /&gt;
|0x19f&lt;br /&gt;
|0x9b&lt;br /&gt;
|-&lt;br /&gt;
|fprintfields&lt;br /&gt;
|0x1a0&lt;br /&gt;
|0x9c&lt;br /&gt;
|-&lt;br /&gt;
|freadln&lt;br /&gt;
|0x1a1&lt;br /&gt;
|0x9d&lt;br /&gt;
|-&lt;br /&gt;
|fgetarg&lt;br /&gt;
|0x1a2&lt;br /&gt;
|0x9e&lt;br /&gt;
|-&lt;br /&gt;
|setminimap&lt;br /&gt;
|0x1a3&lt;br /&gt;
|0x9f&lt;br /&gt;
|-&lt;br /&gt;
|setthermalbodymaterial&lt;br /&gt;
|0x1a4&lt;br /&gt;
|0xa0&lt;br /&gt;
|-&lt;br /&gt;
|getarraykeys&lt;br /&gt;
|0x1a5&lt;br /&gt;
|0xa1&lt;br /&gt;
|-&lt;br /&gt;
|getfirstarraykey&lt;br /&gt;
|0x1a6&lt;br /&gt;
|0xa2&lt;br /&gt;
|-&lt;br /&gt;
|getnextarraykey&lt;br /&gt;
|0x18c&lt;br /&gt;
|0xa3&lt;br /&gt;
|-&lt;br /&gt;
|sortbydistance&lt;br /&gt;
|0x18d&lt;br /&gt;
|0xa4&lt;br /&gt;
|-&lt;br /&gt;
|tablelookup&lt;br /&gt;
|0x18e&lt;br /&gt;
|0xa5&lt;br /&gt;
|-&lt;br /&gt;
|tablelookupbyrow&lt;br /&gt;
|0x18f&lt;br /&gt;
|0xa6&lt;br /&gt;
|-&lt;br /&gt;
|tablelookupistring&lt;br /&gt;
|0x190&lt;br /&gt;
|0xa7&lt;br /&gt;
|-&lt;br /&gt;
|tablelookupistringbyrow&lt;br /&gt;
|0x191&lt;br /&gt;
|0xa8&lt;br /&gt;
|-&lt;br /&gt;
|tablelookuprownum&lt;br /&gt;
|0x192&lt;br /&gt;
|0xa9&lt;br /&gt;
|-&lt;br /&gt;
|getmissileowner&lt;br /&gt;
|0x193&lt;br /&gt;
|0xaa&lt;br /&gt;
|-&lt;br /&gt;
|magicbullet&lt;br /&gt;
|0x194&lt;br /&gt;
|0xab&lt;br /&gt;
|-&lt;br /&gt;
|getweaponflashtagname&lt;br /&gt;
|0x195&lt;br /&gt;
|0xac&lt;br /&gt;
|-&lt;br /&gt;
|averagepoint&lt;br /&gt;
|0x196&lt;br /&gt;
|0xad&lt;br /&gt;
|-&lt;br /&gt;
|averagenormal&lt;br /&gt;
|0x197&lt;br /&gt;
|0xae&lt;br /&gt;
|-&lt;br /&gt;
|getglass&lt;br /&gt;
|0x1a7&lt;br /&gt;
|0xaf&lt;br /&gt;
|-&lt;br /&gt;
|getglassarray&lt;br /&gt;
|0x1a8&lt;br /&gt;
|0xb0&lt;br /&gt;
|-&lt;br /&gt;
|getglassorigin&lt;br /&gt;
|0x1a9&lt;br /&gt;
|0xb1&lt;br /&gt;
|-&lt;br /&gt;
|isglassdestroyed&lt;br /&gt;
|0x1aa&lt;br /&gt;
|0xb2&lt;br /&gt;
|-&lt;br /&gt;
|destroyglass&lt;br /&gt;
|0x1ab&lt;br /&gt;
|0xb3&lt;br /&gt;
|-&lt;br /&gt;
|deleteglass&lt;br /&gt;
|0x1ac&lt;br /&gt;
|0xb4&lt;br /&gt;
|-&lt;br /&gt;
|getentchannelscount&lt;br /&gt;
|0x1ad&lt;br /&gt;
|0xb5&lt;br /&gt;
|-&lt;br /&gt;
|getentchannelname&lt;br /&gt;
|N/A&lt;br /&gt;
|0xb6&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- objective functions --&amp;gt;&lt;br /&gt;
|objective_add&lt;br /&gt;
|0x1af&lt;br /&gt;
|0xb7&lt;br /&gt;
|-&lt;br /&gt;
|objective_delete&lt;br /&gt;
|0x1b0&lt;br /&gt;
|0xb8&lt;br /&gt;
|-&lt;br /&gt;
|objective_state&lt;br /&gt;
|0x1b1&lt;br /&gt;
|0xb9&lt;br /&gt;
|-&lt;br /&gt;
|objective_icon&lt;br /&gt;
|0x1b2&lt;br /&gt;
|0xba&lt;br /&gt;
|-&lt;br /&gt;
|objective_position&lt;br /&gt;
|0x1b3&lt;br /&gt;
|0xbb&lt;br /&gt;
|-&lt;br /&gt;
|objective_current&lt;br /&gt;
|0x1b4&lt;br /&gt;
|0xbc&lt;br /&gt;
|-&lt;br /&gt;
|objective_onentity&lt;br /&gt;
|0x165&lt;br /&gt;
|0xbd&lt;br /&gt;
|-&lt;br /&gt;
|objective_team&lt;br /&gt;
|0x166&lt;br /&gt;
|0xbe&lt;br /&gt;
|-&lt;br /&gt;
|objective_player&lt;br /&gt;
|0x167&lt;br /&gt;
|0xbf&lt;br /&gt;
|-&lt;br /&gt;
|objective_playerteam&lt;br /&gt;
|0x168&lt;br /&gt;
|0xc0&lt;br /&gt;
|-&lt;br /&gt;
|objective_playerenemyteam&lt;br /&gt;
|0x169&lt;br /&gt;
|0xc1&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- function list 2 --&amp;gt;&lt;br /&gt;
|iprintln&lt;br /&gt;
|0x16a&lt;br /&gt;
|0xc2&lt;br /&gt;
|-&lt;br /&gt;
|iprintlnbold&lt;br /&gt;
|0x16b&lt;br /&gt;
|0xc3&lt;br /&gt;
|-&lt;br /&gt;
|logstring&lt;br /&gt;
|0x16c&lt;br /&gt;
|0xc4&lt;br /&gt;
|-&lt;br /&gt;
|getent&lt;br /&gt;
|0x16d&lt;br /&gt;
|0xc5&lt;br /&gt;
|-&lt;br /&gt;
|getentarray&lt;br /&gt;
|0x16e&lt;br /&gt;
|0xc6&lt;br /&gt;
|-&lt;br /&gt;
|spawnplane&lt;br /&gt;
|0x16f&lt;br /&gt;
|0xc7&lt;br /&gt;
|-&lt;br /&gt;
|spawnstruct&lt;br /&gt;
|0x170&lt;br /&gt;
|0xc8&lt;br /&gt;
|-&lt;br /&gt;
|spawnhelicopter&lt;br /&gt;
|0x171&lt;br /&gt;
|0xc9&lt;br /&gt;
|-&lt;br /&gt;
|isalive&lt;br /&gt;
|0x172&lt;br /&gt;
|0xca&lt;br /&gt;
|-&lt;br /&gt;
|isspawner&lt;br /&gt;
|0x173&lt;br /&gt;
|0xcb&lt;br /&gt;
|-&lt;br /&gt;
|createattractorent&lt;br /&gt;
|0x174&lt;br /&gt;
|0xcc&lt;br /&gt;
|-&lt;br /&gt;
|createattractororigin&lt;br /&gt;
|0x175&lt;br /&gt;
|0xcd&lt;br /&gt;
|-&lt;br /&gt;
|createrepulsorent&lt;br /&gt;
|0x176&lt;br /&gt;
|0xce&lt;br /&gt;
|-&lt;br /&gt;
|createrepulsororigin&lt;br /&gt;
|0x177&lt;br /&gt;
|0xcf&lt;br /&gt;
|-&lt;br /&gt;
|deleteattractor&lt;br /&gt;
|0x178&lt;br /&gt;
|0xd0&lt;br /&gt;
|-&lt;br /&gt;
|playsoundatpos&lt;br /&gt;
|0x179&lt;br /&gt;
|0xd1&lt;br /&gt;
|-&lt;br /&gt;
|newhudelem&lt;br /&gt;
|0x17a&lt;br /&gt;
|0x1c7&lt;br /&gt;
|-&lt;br /&gt;
|newclienthudelem&lt;br /&gt;
|0x17b&lt;br /&gt;
|0xd2&lt;br /&gt;
|-&lt;br /&gt;
|newteamhudelem&lt;br /&gt;
|0x17c&lt;br /&gt;
|0xd3&lt;br /&gt;
|-&lt;br /&gt;
|newdamageindicatorhudelem&lt;br /&gt;
|N/A&lt;br /&gt;
|0xd4&lt;br /&gt;
|-&lt;br /&gt;
|resettimeout&lt;br /&gt;
|0x17d&lt;br /&gt;
|0xd5&lt;br /&gt;
|-&lt;br /&gt;
|precachefxteamthermal&lt;br /&gt;
|0x17e&lt;br /&gt;
|0xd6&lt;br /&gt;
|-&lt;br /&gt;
|isplayer&lt;br /&gt;
|0x17f&lt;br /&gt;
|0xd7&lt;br /&gt;
|-&lt;br /&gt;
|isplayernumber&lt;br /&gt;
|0x180&lt;br /&gt;
|0xd8&lt;br /&gt;
|-&lt;br /&gt;
|setsunlight&lt;br /&gt;
|0x39&lt;br /&gt;
|0x191&lt;br /&gt;
|-&lt;br /&gt;
|resetsunlight&lt;br /&gt;
|0x3a&lt;br /&gt;
|0x192&lt;br /&gt;
|-&lt;br /&gt;
|setwinningplayer&lt;br /&gt;
|0x181&lt;br /&gt;
|0xd9&lt;br /&gt;
|-&lt;br /&gt;
|setwinningteam&lt;br /&gt;
|0x137&lt;br /&gt;
|0xda&lt;br /&gt;
|-&lt;br /&gt;
|announcement&lt;br /&gt;
|0x138&lt;br /&gt;
|0xdb&lt;br /&gt;
|-&lt;br /&gt;
|clientannouncement&lt;br /&gt;
|0x139&lt;br /&gt;
|0xdc&lt;br /&gt;
|-&lt;br /&gt;
|getteamscore&lt;br /&gt;
|0x13a&lt;br /&gt;
|0xdd&lt;br /&gt;
|-&lt;br /&gt;
|setteamscore&lt;br /&gt;
|0x13b&lt;br /&gt;
|0xde&lt;br /&gt;
|-&lt;br /&gt;
|setclientnamemode&lt;br /&gt;
|0x13c&lt;br /&gt;
|0xdf&lt;br /&gt;
|-&lt;br /&gt;
|updateclientnames&lt;br /&gt;
|0x13d&lt;br /&gt;
|0xe0&lt;br /&gt;
|-&lt;br /&gt;
|getteamplayersalive&lt;br /&gt;
|0x13e&lt;br /&gt;
|0xe1&lt;br /&gt;
|-&lt;br /&gt;
|logprint&lt;br /&gt;
|0x13f&lt;br /&gt;
|0xe2&lt;br /&gt;
|-&lt;br /&gt;
|worldentnumber&lt;br /&gt;
|0x140&lt;br /&gt;
|0xe3&lt;br /&gt;
|-&lt;br /&gt;
|obituary&lt;br /&gt;
|0x141&lt;br /&gt;
|0xe4&lt;br /&gt;
|-&lt;br /&gt;
|positionwouldtelefrag&lt;br /&gt;
|0x142&lt;br /&gt;
|0xe5&lt;br /&gt;
|-&lt;br /&gt;
|canspawn&lt;br /&gt;
|0x143&lt;br /&gt;
|0xe6&lt;br /&gt;
|-&lt;br /&gt;
|getstarttime&lt;br /&gt;
|0x144&lt;br /&gt;
|0xe7&lt;br /&gt;
|-&lt;br /&gt;
|precachestatusicon&lt;br /&gt;
|0x145&lt;br /&gt;
|0xe8&lt;br /&gt;
|-&lt;br /&gt;
|precacheminimapicon&lt;br /&gt;
|0x147&lt;br /&gt;
|0xea&lt;br /&gt;
|-&lt;br /&gt;
|precachempanim&lt;br /&gt;
|0x148&lt;br /&gt;
|0xeb&lt;br /&gt;
|-&lt;br /&gt;
|restart&lt;br /&gt;
|0x149&lt;br /&gt;
|0xec&lt;br /&gt;
|-&lt;br /&gt;
|exitlevel&lt;br /&gt;
|0x14a&lt;br /&gt;
|0xed&lt;br /&gt;
|-&lt;br /&gt;
|addtestclient&lt;br /&gt;
|0x14b&lt;br /&gt;
|0xee&lt;br /&gt;
|-&lt;br /&gt;
|makedvarserverinfo&lt;br /&gt;
|0x14c&lt;br /&gt;
|0xef&lt;br /&gt;
|-&lt;br /&gt;
|setarchive&lt;br /&gt;
|0x14d&lt;br /&gt;
|0xf0&lt;br /&gt;
|-&lt;br /&gt;
|allclientsprint&lt;br /&gt;
|0x14e&lt;br /&gt;
|0xf1&lt;br /&gt;
|-&lt;br /&gt;
|clientprint&lt;br /&gt;
|0x14f&lt;br /&gt;
|0xf2&lt;br /&gt;
|-&lt;br /&gt;
|mapexists&lt;br /&gt;
|0x150&lt;br /&gt;
|0xf3&lt;br /&gt;
|-&lt;br /&gt;
|isvalidgametype&lt;br /&gt;
|0x151&lt;br /&gt;
|0xf4&lt;br /&gt;
|-&lt;br /&gt;
|matchend&lt;br /&gt;
|0x152&lt;br /&gt;
|0xf5&lt;br /&gt;
|-&lt;br /&gt;
|setplayerteamrank&lt;br /&gt;
|0x153&lt;br /&gt;
|0xf6&lt;br /&gt;
|-&lt;br /&gt;
|endparty&lt;br /&gt;
|0x154&lt;br /&gt;
|0xf7&lt;br /&gt;
|-&lt;br /&gt;
|setteamradar&lt;br /&gt;
|0x155&lt;br /&gt;
|0xf8&lt;br /&gt;
|-&lt;br /&gt;
|getteamradar&lt;br /&gt;
|0x156&lt;br /&gt;
|0xf9&lt;br /&gt;
|-&lt;br /&gt;
|setteamradarstrength&lt;br /&gt;
|0x157&lt;br /&gt;
|0xfa&lt;br /&gt;
|-&lt;br /&gt;
|getteamradarstrength&lt;br /&gt;
|0x158&lt;br /&gt;
|0xfb&lt;br /&gt;
|-&lt;br /&gt;
|getuavstrengthmin&lt;br /&gt;
|0x159&lt;br /&gt;
|0xfc&lt;br /&gt;
|-&lt;br /&gt;
|getuavstrengthmax&lt;br /&gt;
|0x106&lt;br /&gt;
|0xfd&lt;br /&gt;
|-&lt;br /&gt;
|getuavstrengthlevelneutral&lt;br /&gt;
|0x107&lt;br /&gt;
|0xfe&lt;br /&gt;
|-&lt;br /&gt;
|getuavstrengthlevelshowenemyfastsweep&lt;br /&gt;
|0x108&lt;br /&gt;
|0xff&lt;br /&gt;
|-&lt;br /&gt;
|getuavstrengthlevelshowenemydirectional&lt;br /&gt;
|0x109&lt;br /&gt;
|0x100&lt;br /&gt;
|-&lt;br /&gt;
|blockteamradar&lt;br /&gt;
|0x10a&lt;br /&gt;
|0x101&lt;br /&gt;
|-&lt;br /&gt;
|unblockteamradar&lt;br /&gt;
|0x10b&lt;br /&gt;
|0x102&lt;br /&gt;
|-&lt;br /&gt;
|isteamradarblocked&lt;br /&gt;
|0x10c&lt;br /&gt;
|0x103&lt;br /&gt;
|-&lt;br /&gt;
|getassignedteam&lt;br /&gt;
|0x10d&lt;br /&gt;
|0x104&lt;br /&gt;
|-&lt;br /&gt;
|setmatchdata&lt;br /&gt;
|0x10e&lt;br /&gt;
|0x105&lt;br /&gt;
|-&lt;br /&gt;
|getmatchdata&lt;br /&gt;
|0x10f&lt;br /&gt;
|0x106&lt;br /&gt;
|-&lt;br /&gt;
|sendmatchdata&lt;br /&gt;
|0x110&lt;br /&gt;
|0x107&lt;br /&gt;
|-&lt;br /&gt;
|clearmatchdata&lt;br /&gt;
|0x111&lt;br /&gt;
|0x108&lt;br /&gt;
|-&lt;br /&gt;
|setmatchdatadef&lt;br /&gt;
|0x112&lt;br /&gt;
|0x109&lt;br /&gt;
|-&lt;br /&gt;
|setmatchclientip&lt;br /&gt;
|0x113&lt;br /&gt;
|0x10a&lt;br /&gt;
|-&lt;br /&gt;
|setmatchdataid&lt;br /&gt;
|0x114&lt;br /&gt;
|0x10b&lt;br /&gt;
|-&lt;br /&gt;
|setclientmatchdata&lt;br /&gt;
|0x115&lt;br /&gt;
|0x10c&lt;br /&gt;
|-&lt;br /&gt;
|getclientmatchdata&lt;br /&gt;
|0x116&lt;br /&gt;
|0x10d&lt;br /&gt;
|-&lt;br /&gt;
|setclientmatchdatadef&lt;br /&gt;
|0x117&lt;br /&gt;
|0x10e&lt;br /&gt;
|-&lt;br /&gt;
|sendclientmatchdata&lt;br /&gt;
|0x118&lt;br /&gt;
|0x10f&lt;br /&gt;
|-&lt;br /&gt;
|getbuildversion&lt;br /&gt;
|0x119&lt;br /&gt;
|0x110&lt;br /&gt;
|-&lt;br /&gt;
|getbuildnumber&lt;br /&gt;
|0x11a&lt;br /&gt;
|0x111&lt;br /&gt;
|-&lt;br /&gt;
|getsystemtime&lt;br /&gt;
|0x11b&lt;br /&gt;
|0x112&lt;br /&gt;
|-&lt;br /&gt;
|getmatchrulesdata&lt;br /&gt;
|0x11c&lt;br /&gt;
|0x113&lt;br /&gt;
|-&lt;br /&gt;
|isusingmatchrulesdata&lt;br /&gt;
|0x11d&lt;br /&gt;
|0x114&lt;br /&gt;
|-&lt;br /&gt;
|kick&lt;br /&gt;
|0x11e&lt;br /&gt;
|0x115&lt;br /&gt;
|-&lt;br /&gt;
|issplitscreen&lt;br /&gt;
|0x11f&lt;br /&gt;
|0x116&lt;br /&gt;
|-&lt;br /&gt;
|setmapcenter&lt;br /&gt;
|0x120&lt;br /&gt;
|0x117&lt;br /&gt;
|-&lt;br /&gt;
|setgameendtime&lt;br /&gt;
|0x121&lt;br /&gt;
|0x118&lt;br /&gt;
|-&lt;br /&gt;
|visionsetnaked&lt;br /&gt;
|0x122&lt;br /&gt;
|0x119&lt;br /&gt;
|-&lt;br /&gt;
|visionsetnight&lt;br /&gt;
|0x123&lt;br /&gt;
|0x11a&lt;br /&gt;
|-&lt;br /&gt;
|visionsetmissilecam&lt;br /&gt;
|0x124&lt;br /&gt;
|0x11b&lt;br /&gt;
|-&lt;br /&gt;
|visionsetthermal&lt;br /&gt;
|0xd9&lt;br /&gt;
|0x11c&lt;br /&gt;
|-&lt;br /&gt;
|visionsetpain&lt;br /&gt;
|0xda&lt;br /&gt;
|0x11d&lt;br /&gt;
|-&lt;br /&gt;
|endlobby&lt;br /&gt;
|0xdb&lt;br /&gt;
|0x11e&lt;br /&gt;
|-&lt;br /&gt;
|ambience&lt;br /&gt;
|0xdc&lt;br /&gt;
|0x11f&lt;br /&gt;
|-&lt;br /&gt;
|getmapcustom&lt;br /&gt;
|0xdd&lt;br /&gt;
|0x120&lt;br /&gt;
|-&lt;br /&gt;
|updateskill&lt;br /&gt;
|0xde&lt;br /&gt;
|0x121&lt;br /&gt;
|-&lt;br /&gt;
|spawnsighttrace&lt;br /&gt;
|0xdf&lt;br /&gt;
|0x122&lt;br /&gt;
|-&lt;br /&gt;
|incrementcounter&lt;br /&gt;
|N/A&lt;br /&gt;
|0x123&lt;br /&gt;
|-&lt;br /&gt;
|getcountertotal&lt;br /&gt;
|N/A&lt;br /&gt;
|0x124&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Field IDs ==&lt;br /&gt;
In Ghosts and AW, fields have been sorted alphabetically and were then enumerated. This way, fields starting with the letter a such as &amp;quot;alignx&amp;quot; have got the lowest field ids.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Client Fields&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!rowspan=&amp;quot;2&amp;quot;|Field&lt;br /&gt;
!colspan=&amp;quot;1&amp;quot;|MW3&lt;br /&gt;
!colspan=&amp;quot;1&amp;quot;|AW&lt;br /&gt;
|-&lt;br /&gt;
!PS3 ID&lt;br /&gt;
!PS3 ID&lt;br /&gt;
|-&lt;br /&gt;
| name&lt;br /&gt;
| 0x2D1&lt;br /&gt;
| 0x2AF&lt;br /&gt;
|-&lt;br /&gt;
| sessionteam  &lt;br /&gt;
| 0x2D2&lt;br /&gt;
| 0x3C1&lt;br /&gt;
|-&lt;br /&gt;
| sessionstate&lt;br /&gt;
| 0x2D3&lt;br /&gt;
| 0x3C0&lt;br /&gt;
|-&lt;br /&gt;
| maxhealth&lt;br /&gt;
| 0x2D4&lt;br /&gt;
| 0x279&lt;br /&gt;
|-&lt;br /&gt;
| score&lt;br /&gt;
| 0x2D5&lt;br /&gt;
| 0x394&lt;br /&gt;
|-&lt;br /&gt;
| deaths&lt;br /&gt;
| 0x2D6&lt;br /&gt;
| 0x112&lt;br /&gt;
|-&lt;br /&gt;
| extrascore0&lt;br /&gt;
|&lt;br /&gt;
| 0x16D&lt;br /&gt;
|-&lt;br /&gt;
| extrascore1&lt;br /&gt;
|&lt;br /&gt;
| 0x16E&lt;br /&gt;
|-&lt;br /&gt;
| killstreakcount&lt;br /&gt;
|&lt;br /&gt;
| 0x242&lt;br /&gt;
|-&lt;br /&gt;
| objective&lt;br /&gt;
|&lt;br /&gt;
| 0x2DA&lt;br /&gt;
|-&lt;br /&gt;
| statusicon&lt;br /&gt;
| 0x2D7&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| headicon&lt;br /&gt;
| 0x2D8&lt;br /&gt;
| 0x1E8&lt;br /&gt;
|-&lt;br /&gt;
| headiconteam&lt;br /&gt;
| 0x2D9&lt;br /&gt;
| 0x1E9&lt;br /&gt;
|-&lt;br /&gt;
| kills&lt;br /&gt;
| 0x2DB&lt;br /&gt;
| 0x240&lt;br /&gt;
|-&lt;br /&gt;
| assists&lt;br /&gt;
| 0x2DC&lt;br /&gt;
| 0x53&lt;br /&gt;
|-&lt;br /&gt;
| hasradar&lt;br /&gt;
| 0x2DD&lt;br /&gt;
| 0x1E4&lt;br /&gt;
|-&lt;br /&gt;
| isradarblocked &lt;br /&gt;
| 0x2DE&lt;br /&gt;
| 0x217&lt;br /&gt;
|-&lt;br /&gt;
| radarstrength&lt;br /&gt;
| 0x2DF&lt;br /&gt;
| 0x357&lt;br /&gt;
|-&lt;br /&gt;
| radarshowenemydirection&lt;br /&gt;
| 0x2E0&lt;br /&gt;
| 0x356&lt;br /&gt;
|-&lt;br /&gt;
| radarmode&lt;br /&gt;
| 0x2E1&lt;br /&gt;
| 0x355&lt;br /&gt;
|-&lt;br /&gt;
| enemyradarmode&lt;br /&gt;
|&lt;br /&gt;
| 0x14D&lt;br /&gt;
|-&lt;br /&gt;
| forcespectatorclient&lt;br /&gt;
| 0x2E2&lt;br /&gt;
| 0x19C&lt;br /&gt;
|-&lt;br /&gt;
| killcamentity&lt;br /&gt;
| 0x2E3&lt;br /&gt;
| 0x23E&lt;br /&gt;
|-&lt;br /&gt;
| killcamentitylookat&lt;br /&gt;
| 0x2E4&lt;br /&gt;
| 0x23F&lt;br /&gt;
|-&lt;br /&gt;
| spectatekillcam&lt;br /&gt;
|&lt;br /&gt;
| 0x3E3&lt;br /&gt;
|-&lt;br /&gt;
| archivetime&lt;br /&gt;
| 0x2E5&lt;br /&gt;
| 0x4D&lt;br /&gt;
|-&lt;br /&gt;
| psoffsettime &lt;br /&gt;
| 0x2E6&lt;br /&gt;
| 0x352&lt;br /&gt;
|-&lt;br /&gt;
| pers&lt;br /&gt;
| 0x2E7&lt;br /&gt;
| 0x311&lt;br /&gt;
|-&lt;br /&gt;
| game_extrainfo&lt;br /&gt;
|&lt;br /&gt;
| 0x1B5&lt;br /&gt;
|-&lt;br /&gt;
| playercardpatch&lt;br /&gt;
|&lt;br /&gt;
| 0x325&lt;br /&gt;
|-&lt;br /&gt;
| playercardbackground&lt;br /&gt;
|&lt;br /&gt;
| 0x324&lt;br /&gt;
|}&lt;br /&gt;
&#039;&#039;&#039;Entity Fields&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot;|Field&lt;br /&gt;
! colspan=&amp;quot;1&amp;quot;|MW3&lt;br /&gt;
! colspan=&amp;quot;1&amp;quot;|AW&lt;br /&gt;
|-&lt;br /&gt;
! PS3 ID&lt;br /&gt;
! PS3 ID&lt;br /&gt;
|-&lt;br /&gt;
| code_classname&lt;br /&gt;
| 0x2C3&lt;br /&gt;
| 0xB1&lt;br /&gt;
|-&lt;br /&gt;
| classname&lt;br /&gt;
| 0x2C4&lt;br /&gt;
| 0xAF&lt;br /&gt;
|-&lt;br /&gt;
| origin&lt;br /&gt;
| 0x2C5&lt;br /&gt;
| 0x2EA&lt;br /&gt;
|-&lt;br /&gt;
| model&lt;br /&gt;
| 0x2C6&lt;br /&gt;
| 0x2A4&lt;br /&gt;
|-&lt;br /&gt;
| spawnflags&lt;br /&gt;
| 0x2C7&lt;br /&gt;
| 0x3DF&lt;br /&gt;
|-&lt;br /&gt;
| target&lt;br /&gt;
| 0x2C8&lt;br /&gt;
| 0x4A9&lt;br /&gt;
|-&lt;br /&gt;
| targetname&lt;br /&gt;
| 0x2C9&lt;br /&gt;
| 0x4AB&lt;br /&gt;
|-&lt;br /&gt;
| count&lt;br /&gt;
| 0x2CA&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| health&lt;br /&gt;
| 0x2CB&lt;br /&gt;
| 0x1EB&lt;br /&gt;
|-&lt;br /&gt;
| dmg&lt;br /&gt;
| 0x2CC&lt;br /&gt;
| 0x12A&lt;br /&gt;
|-&lt;br /&gt;
| angles&lt;br /&gt;
| 0x2CD&lt;br /&gt;
| 0x45&lt;br /&gt;
|-&lt;br /&gt;
| birthtime&lt;br /&gt;
| 0x2CE&lt;br /&gt;
| 0x81&lt;br /&gt;
|-&lt;br /&gt;
| script_linkname&lt;br /&gt;
| 0x2CF&lt;br /&gt;
| 0x39D&lt;br /&gt;
|-&lt;br /&gt;
| slidevelocity&lt;br /&gt;
| 0x2D0&lt;br /&gt;
| 0x3D0&lt;br /&gt;
|-&lt;br /&gt;
| owner&lt;br /&gt;
| &lt;br /&gt;
| 0x2ED&lt;br /&gt;
|}&lt;br /&gt;
&#039;&#039;&#039;Vehicle Fields&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot;|Field&lt;br /&gt;
! colspan=&amp;quot;1&amp;quot;|MW3&lt;br /&gt;
! colspan=&amp;quot;1&amp;quot;|AW&lt;br /&gt;
|-&lt;br /&gt;
! PS3 ID&lt;br /&gt;
! PS3 ID&lt;br /&gt;
|-&lt;br /&gt;
| veh_speed || 0x2FF || 0x4FC&lt;br /&gt;
|-&lt;br /&gt;
| veh_pathspeed || 0x300 || 0x4F9&lt;br /&gt;
|-&lt;br /&gt;
| veh_transmission || 0x301 || 0x4FF&lt;br /&gt;
|-&lt;br /&gt;
| veh_pathdir || 0x302 || 0x4F8&lt;br /&gt;
|-&lt;br /&gt;
| veh_pathtype || 0x303 || 0x4FA&lt;br /&gt;
|-&lt;br /&gt;
| veh_topspeed || 0x304 || 0x4FE&lt;br /&gt;
|-&lt;br /&gt;
| veh_brake || 0x305 || 0x4F2&lt;br /&gt;
|-&lt;br /&gt;
| veh_throttle || 0x306 || 0x4FD&lt;br /&gt;
|}&lt;br /&gt;
&#039;&#039;&#039;Hudelem Fields&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot;|Field&lt;br /&gt;
! colspan=&amp;quot;1&amp;quot;|MW3&lt;br /&gt;
! colspan=&amp;quot;1&amp;quot;|AW&lt;br /&gt;
|-&lt;br /&gt;
! PS3 ID&lt;br /&gt;
! PS3 ID&lt;br /&gt;
|-&lt;br /&gt;
| x&lt;br /&gt;
| 0x2E8&lt;br /&gt;
| 0x534&lt;br /&gt;
|-&lt;br /&gt;
| y&lt;br /&gt;
| 0x2E9&lt;br /&gt;
| 0x53C&lt;br /&gt;
|-&lt;br /&gt;
| z&lt;br /&gt;
| 0x2EA&lt;br /&gt;
| 0x53F&lt;br /&gt;
|-&lt;br /&gt;
| fontscale&lt;br /&gt;
| 0x2EB&lt;br /&gt;
| 0x190&lt;br /&gt;
|-&lt;br /&gt;
| font&lt;br /&gt;
| 0x2EC&lt;br /&gt;
| 0x18F&lt;br /&gt;
|-&lt;br /&gt;
| alignx&lt;br /&gt;
| 0x2ED&lt;br /&gt;
| 0x30&lt;br /&gt;
|-&lt;br /&gt;
| aligny&lt;br /&gt;
| 0x2EE&lt;br /&gt;
| 0x31&lt;br /&gt;
|-&lt;br /&gt;
| horzalign&lt;br /&gt;
| 0x2EF&lt;br /&gt;
| 0x1F8&lt;br /&gt;
|-&lt;br /&gt;
| vertalign&lt;br /&gt;
| 0x2F0&lt;br /&gt;
| 0x504&lt;br /&gt;
|-&lt;br /&gt;
| color&lt;br /&gt;
| 0x2F1&lt;br /&gt;
| 0xC9&lt;br /&gt;
|-&lt;br /&gt;
| alpha &lt;br /&gt;
| 0x2F2&lt;br /&gt;
| 0x3B&lt;br /&gt;
|-&lt;br /&gt;
| label &lt;br /&gt;
| 0x2F3&lt;br /&gt;
| 0x249&lt;br /&gt;
|-&lt;br /&gt;
| sort &lt;br /&gt;
| 0x2F4&lt;br /&gt;
| 0x3D9&lt;br /&gt;
|-&lt;br /&gt;
| foreground &lt;br /&gt;
| 0x2F5&lt;br /&gt;
| 0x19E&lt;br /&gt;
|-&lt;br /&gt;
| lowresbackground &lt;br /&gt;
| 0x2F6&lt;br /&gt;
| 0x26B&lt;br /&gt;
|-&lt;br /&gt;
| hidewhendead &lt;br /&gt;
| 0x2F7&lt;br /&gt;
| 0x1F0&lt;br /&gt;
|-&lt;br /&gt;
| hidewheninmenu &lt;br /&gt;
| 0x2F8&lt;br /&gt;
| 0x1F2&lt;br /&gt;
|-&lt;br /&gt;
| glowcolor &lt;br /&gt;
| 0x2FA&lt;br /&gt;
| 0x1C4&lt;br /&gt;
|-&lt;br /&gt;
| glowalpha &lt;br /&gt;
| 0x2FB&lt;br /&gt;
| 0x8C&lt;br /&gt;
|-&lt;br /&gt;
| archived &lt;br /&gt;
| 0x2FC&lt;br /&gt;
| 0x4C&lt;br /&gt;
|-&lt;br /&gt;
| showinkillcam&lt;br /&gt;
|&lt;br /&gt;
| 0x3C8&lt;br /&gt;
|-&lt;br /&gt;
| hidein3rdperson &lt;br /&gt;
| 0x2FD&lt;br /&gt;
| 0x1EF&lt;br /&gt;
|-&lt;br /&gt;
| positioninworld&lt;br /&gt;
|&lt;br /&gt;
| 0x333&lt;br /&gt;
|-&lt;br /&gt;
| hidewhenindemo &lt;br /&gt;
| 0x2FE&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| enablehudlighting&lt;br /&gt;
|&lt;br /&gt;
| 0x140&lt;br /&gt;
|}&lt;br /&gt;
&#039;&#039;&#039;Entity Array Fields&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!rowspan=&amp;quot;2&amp;quot;|Field&lt;br /&gt;
!colspan=&amp;quot;1&amp;quot;|MW3&lt;br /&gt;
!colspan=&amp;quot;1&amp;quot;|AW&lt;br /&gt;
|-&lt;br /&gt;
!PS3 ID&lt;br /&gt;
!PS3 ID&lt;br /&gt;
|-&lt;br /&gt;
| targetname&lt;br /&gt;
| 0x2C9&lt;br /&gt;
| 0x4AB&lt;br /&gt;
|-&lt;br /&gt;
| target&lt;br /&gt;
| 0x2C8&lt;br /&gt;
| 0x4A9&lt;br /&gt;
|-&lt;br /&gt;
| script_linkname&lt;br /&gt;
| 0x2CF&lt;br /&gt;
| 0x39D&lt;br /&gt;
|-&lt;br /&gt;
| script_noteworthy&lt;br /&gt;
| 0x307&lt;br /&gt;
| 0x39F&lt;br /&gt;
|-&lt;br /&gt;
| origin&lt;br /&gt;
| 0x2C5&lt;br /&gt;
| 0x2EA&lt;br /&gt;
|-&lt;br /&gt;
| angles&lt;br /&gt;
| 0x2CD&lt;br /&gt;
| 0x45&lt;br /&gt;
|-&lt;br /&gt;
| speed&lt;br /&gt;
| 0x308&lt;br /&gt;
| 0x3E7&lt;br /&gt;
|-&lt;br /&gt;
| lookahead&lt;br /&gt;
|  0x309&lt;br /&gt;
| 0x25F&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Therifboy</name></author>
	</entry>
	<entry>
		<id>https://codresearch.dev/index.php?title=FastFiles_and_Zone_files_(AW)&amp;diff=600</id>
		<title>FastFiles and Zone files (AW)</title>
		<link rel="alternate" type="text/html" href="https://codresearch.dev/index.php?title=FastFiles_and_Zone_files_(AW)&amp;diff=600"/>
		<updated>2014-11-13T19:27:33Z</updated>

		<summary type="html">&lt;p&gt;Therifboy: /* Version */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:FastFiles]]&lt;br /&gt;
[[Category:AW]]&lt;br /&gt;
&lt;br /&gt;
== FastFile Structure ==&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
enum compress_type_t&lt;br /&gt;
{&lt;br /&gt;
  zlib = 1,&lt;br /&gt;
  lzx = 2&lt;br /&gt;
};&lt;br /&gt;
 &lt;br /&gt;
struct Entry&lt;br /&gt;
{&lt;br /&gt;
  int unknown[3];&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
//Entry point for the FF.&lt;br /&gt;
struct DB_Header&lt;br /&gt;
{&lt;br /&gt;
  char magic[8]; // S1ff0100&lt;br /&gt;
  int version;&lt;br /&gt;
  bool allowOnlineUpdate;&lt;br /&gt;
  compress_type_t compressionType;&lt;br /&gt;
  char unknown1;&lt;br /&gt;
  char unknown2;&lt;br /&gt;
  int unknown3;&lt;br /&gt;
  int unknown4;&lt;br /&gt;
  int entryCount;&lt;br /&gt;
  Entry entries[];&lt;br /&gt;
  int fileSize;&lt;br /&gt;
  int maxFileSize;&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Magic ===&lt;br /&gt;
The magic is a string that is 8 characters long. It is either &amp;quot;S1ff0100&amp;quot; or &amp;quot;S1ffu100&amp;quot;. It        indicates what is read after maxFileSize. If it is &amp;quot;S1ff0100&amp;quot; then this fastfile is signed. If it is &amp;quot;S1ffu100&amp;quot;, then this fastfile is unsigned.&lt;br /&gt;
=== Version ===&lt;br /&gt;
&lt;br /&gt;
Helps to dictate the version of the fastfile, so Ghosts fastfiles cannot be loaded on Advanced Warfare. The Advanced Warfare version is 0x72E for the Playstation 3 and Xbox 360 consoles, and the same for PC.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
 if (version &amp;gt; 0x72E)&lt;br /&gt;
  Com_Error(ERR_DROP, &amp;quot;Fastfile for zone &#039;%s&#039; is newer than client executable (version %d, expecting %d)&amp;quot;, filename, version, 0x72E);&lt;br /&gt;
 else if (version &amp;lt; 0x72E)&lt;br /&gt;
  Com_Error(ERR_DROP, &amp;quot;Fastfile for zone &#039;%s&#039; is out of date (version %d, expecting %d)&amp;quot;, filename, version, 0x72E);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== AllowOnlineUpdate ===&lt;br /&gt;
Whether or not assets in this fastfile may be replaced by a fastfile loaded at a later time.&lt;br /&gt;
=== Entries ===&lt;br /&gt;
These are still not entirely understood. Most fastfile systems simply parse past them.&lt;br /&gt;
==== Playstation 3 &amp;amp; Xbox 360 ====&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
 ReadBytes(entryCount * 0x0C);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== File Sizes ===&lt;br /&gt;
The fileSize is the size of the fastfile, everything included. The maxFileSize is the highest number that fileSize can be, and in most fastfiles they are equal.&lt;br /&gt;
&lt;br /&gt;
== Sub Header ==&lt;br /&gt;
The rest of the fastfile is read depending on what the main fastfile magic was. If the magic was &amp;quot;S1ff0100&amp;quot; then the fastfile is signed. If it was &amp;quot;S1ffu100&amp;quot;, the fastfile is unsigned.&lt;br /&gt;
=== Unsigned Files ===&lt;br /&gt;
The only data remaining is compressed data, depending on the enum in the header of the fastfile. Decompressing the data yields the [[#Zone File|zone file]].&lt;br /&gt;
=== Signed Files ===&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
 struct DB_AuthHash&lt;br /&gt;
 {&lt;br /&gt;
   char bytes[32];&lt;br /&gt;
 };&lt;br /&gt;
 &lt;br /&gt;
 struct DB_AuthSignatureHash&lt;br /&gt;
 {&lt;br /&gt;
   char bytes[256];&lt;br /&gt;
 };&lt;br /&gt;
 &lt;br /&gt;
 struct DB_AuthSubheader&lt;br /&gt;
 {&lt;br /&gt;
   char fastfileName[32];&lt;br /&gt;
   int reserved;&lt;br /&gt;
   DB_AuthHash masterBlockHashes[244];&lt;br /&gt;
 };&lt;br /&gt;
 &lt;br /&gt;
 struct DB_AuthHeader&lt;br /&gt;
 {&lt;br /&gt;
   char magic[8]; // S1ffS100&lt;br /&gt;
   int reserved;&lt;br /&gt;
   DB_AuthHash subheaderHash;&lt;br /&gt;
   DB_AuthSignatureHash signedSubheaderHash;&lt;br /&gt;
   DB_AuthSubHeader subheader;&lt;br /&gt;
   char signatureBlock[0x1E030];&lt;br /&gt;
 };&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
The signatures on the XBlocks are checked as the fastfile loads. Then the sub-header master block hashes are checked, followed by the signedSubheaderHash, and lastly the subheaderHash. If any fail, then the loading of the FF is aborted. Only Activision and the game developers can generate the RSA signatures.&lt;br /&gt;
==== Magic ====&lt;br /&gt;
The subheader magic is always &amp;quot;S1ffS100&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=== PS3 ===&lt;br /&gt;
After the zone file is created, it is split into blocks each 0x10000 bytes. Each block is compressed using default zlib compression. The size of the compressed block is stored as an unsigned 16 bit integer over the zlib header (0x78DA). Compressed blocks are concatenated and appended to the fastfile.&lt;br /&gt;
== Zone File ==&lt;br /&gt;
The zone file is the decompressed data from an FF.&lt;/div&gt;</summary>
		<author><name>Therifboy</name></author>
	</entry>
	<entry>
		<id>https://codresearch.dev/index.php?title=ScriptFile_Asset&amp;diff=584</id>
		<title>ScriptFile Asset</title>
		<link rel="alternate" type="text/html" href="https://codresearch.dev/index.php?title=ScriptFile_Asset&amp;diff=584"/>
		<updated>2014-11-11T00:01:10Z</updated>

		<summary type="html">&lt;p&gt;Therifboy: /* Field IDs */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
[[Category:Assets]]&lt;br /&gt;
[[Category:MW3]]&lt;br /&gt;
[[Category:Ghosts]]&lt;br /&gt;
The scriptfile asset is used on Modern Warfare 3, Ghosts, and Advanced Warfare. It is Infinity Ward&#039;s attempt at protecting their game scripts from being modified. Compared to Treyarch&#039;s scriptparsetree, the scriptfile gives away less information on identifying which game script file it originated from. All unnecessary strings have been removed and file names have even been renamed as number id&#039;s.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
struct ScriptFile&lt;br /&gt;
{&lt;br /&gt;
  const char *name;&lt;br /&gt;
  int deflatedLen;&lt;br /&gt;
  int inflatedLen;&lt;br /&gt;
  int codeLen;&lt;br /&gt;
  char *data;&lt;br /&gt;
  char *code;&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
=== Data Section ===&lt;br /&gt;
The data section is a zlib compressed section in which the compressed size is equal to deflatedSize and it&#039;s uncompressed size is equal to inflatedSize.&lt;br /&gt;
&lt;br /&gt;
This section of data is not needed during runtime. Before being executed, the linker runs through the code once and links the data and code section together so that all programs can be ran as one. It contains strings and function call info.&lt;br /&gt;
&lt;br /&gt;
In order to be linked correctly, the code and data section must be read synchronously (e.g. when reading the OP_GetString opcode, the data pointer must be pointing to the string ready to be loaded). The linker does this by incrementing the data pointer each time it reads an opcode that uses it.&lt;br /&gt;
&lt;br /&gt;
At the beginning of each function, the linker loads a 32 bit value, which is the length of the function in the program section. Then it loads a 16 bit value which is the function id. If the id is equal to zero, then it will load a string after it, which is the name of the function. After this, the opcodes may begin to use the data section. The opcodes that use the data section are OP_GetAnimTree, OP_GetString, OP_GetIString, OP_GetAnimation, OP_GetFunction, OP_EvalLevelFieldVariable, OP_EvalAnimFieldVariable, OP_EvalSelfFieldVariable, OP_EvalFieldVariable, OP_EvalLevelFieldVariableRef, OP_EvalAnimFieldVariableRef, OP_EvalSelfFieldVariableRef, OP_EvalFieldVariableRef, OP_ClearFieldVariable, OP_SetLevelFieldVariableField, OP_SetSelfFieldVariableField, all the external call opcodes, and OP_endswitch.&lt;br /&gt;
&lt;br /&gt;
=== Code Section ===&lt;br /&gt;
The code section is the actual compiled game script code. &lt;br /&gt;
== Operation Codes ==&lt;br /&gt;
=== Modern Warfare 3 ===&lt;br /&gt;
==== XBOX &amp;amp; PS3 ====&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#define OP_End					0&lt;br /&gt;
#define OP_Return				1&lt;br /&gt;
#define OP_GetUndefined			2&lt;br /&gt;
#define OP_GetZero				3&lt;br /&gt;
#define OP_GetByte				4&lt;br /&gt;
#define OP_GetAnimTree				5&lt;br /&gt;
#define OP_GetNegByte			6&lt;br /&gt;
#define OP_GetUnsignedShort		7&lt;br /&gt;
#define OP_GetNegUnsignedShort	8&lt;br /&gt;
#define OP_GetInteger			9&lt;br /&gt;
#define OP_GetBuiltinFunction			0xA&lt;br /&gt;
#define OP_GetBuiltinMethod			0xB&lt;br /&gt;
#define OP_GetFloat				0xC&lt;br /&gt;
#define OP_GetString			0xD&lt;br /&gt;
#define OP_GetIString			0xE&lt;br /&gt;
#define OP_GetVector			0xF&lt;br /&gt;
#define OP_GetLevelObject		0x10&lt;br /&gt;
#define OP_GetAnimObject		0x11&lt;br /&gt;
#define OP_GetSelf				0x12&lt;br /&gt;
#define OP_GetThread			0x13&lt;br /&gt;
#define OP_GetLevel				0x14&lt;br /&gt;
#define OP_GetGame				0x15&lt;br /&gt;
#define OP_GetAnim				0x16&lt;br /&gt;
#define OP_GetAnimation			0x17&lt;br /&gt;
#define OP_GetGameRef			0x18&lt;br /&gt;
#define OP_GetMethod			0x19&lt;br /&gt;
#define OP_GetFunction			0x1A&lt;br /&gt;
#define OP_CreateLocalVariable	0x1B&lt;br /&gt;
#define OP_RemoveLocalVariables	0x1C&lt;br /&gt;
#define OP_EvalLocalVariableCached0		0x1D&lt;br /&gt;
#define OP_EvalLocalVariableCached1		0x1E&lt;br /&gt;
#define OP_EvalLocalVariableCached2		0x1F&lt;br /&gt;
#define OP_EvalLocalVariableCached3		0x20&lt;br /&gt;
#define OP_EvalLocalVariableCached4		0x21&lt;br /&gt;
#define OP_EvalLocalVariableCached5		0x22&lt;br /&gt;
#define OP_EvalLocalVariableCached		0x23&lt;br /&gt;
#define OP_EvalLocalArrayCached			0x24&lt;br /&gt;
#define OP_EvalArray					0x25&lt;br /&gt;
#define OP_EvalLocalArrayRefCached0		0x26&lt;br /&gt;
 #define OP_opcode39       				0x27&lt;br /&gt;
#define OP_EvalLocalArrayRefCached		0x28&lt;br /&gt;
#define OP_EvalArrayRef				0x29&lt;br /&gt;
#define OP_ClearArray				0x2A&lt;br /&gt;
#define OP_EmptyArray				0x2B&lt;br /&gt;
 #define OP_opcode44				0x2C&lt;br /&gt;
#define OP_GetSelfObject			0x2D&lt;br /&gt;
#define OP_EvalLevelFieldVariable	0x2E&lt;br /&gt;
#define OP_EvalAnimFieldVariable	0x2F&lt;br /&gt;
#define OP_EvalSelfFieldVariable	0x30&lt;br /&gt;
#define OP_EvalFieldVariable		0x31&lt;br /&gt;
#define OP_EvalLevelFieldVariableRef 	0x32&lt;br /&gt;
#define OP_EvalAnimFieldVariableRef		0x33&lt;br /&gt;
#define OP_EvalSelfFieldVariableRef		0x34&lt;br /&gt;
#define OP_EvalFieldVariableRef			0x35&lt;br /&gt;
#define OP_ClearFieldVariable			0x36&lt;br /&gt;
#define OP_SafeCreateVariableFieldCached	0x37&lt;br /&gt;
#define OP_SafeSetVariableFieldCached0		0x38&lt;br /&gt;
#define OP_SafeSetVariableFieldCached		0x39&lt;br /&gt;
#define OP_SafeSetWaittillVariableFieldCached	0x3A&lt;br /&gt;
#define OP_clearparams				0x3B&lt;br /&gt;
#define OP_checkclearparams			0x3C&lt;br /&gt;
#define OP_EvalLocalVariableRefCached0				0x3D&lt;br /&gt;
// #define OP_opcode62				0x3E	// nop&lt;br /&gt;
#define OP_EvalLocalVariableRefCached	0x3F&lt;br /&gt;
#define OP_SetLevelFieldVariableField	0x40&lt;br /&gt;
#define OP_SetVariableField		0x41&lt;br /&gt;
// #define OP_opcode66			0x42	// nop&lt;br /&gt;
#define OP_SetAnimFieldVariableField	0x43&lt;br /&gt;
#define OP_SetSelfFieldVariableField	0x44&lt;br /&gt;
#define OP_SetLocalVariableFieldCached0		0x45&lt;br /&gt;
#define OP_CreateLocalVariable2		0x46&lt;br /&gt;
#define OP_SetLocalVariableFieldCached		0x47&lt;br /&gt;
 #define OP_opcode72		0x48&lt;br /&gt;
 #define OP_opcode73		0x49&lt;br /&gt;
#define OP_CallBuiltin0		0x4A&lt;br /&gt;
#define OP_CallBuiltin1		0x4B&lt;br /&gt;
#define OP_CallBuiltin2		0x4C&lt;br /&gt;
#define OP_CallBuiltin3		0x4D&lt;br /&gt;
#define OP_CallBuiltin4		0x4E&lt;br /&gt;
#define OP_CallBuiltin5		0x4F&lt;br /&gt;
#define OP_CallBuiltin		0x50&lt;br /&gt;
#define OP_CallBuiltinMethod0	0x51&lt;br /&gt;
#define OP_CallBuiltinMethod1	0x52&lt;br /&gt;
#define OP_CallBuiltinMethod2	0x53&lt;br /&gt;
#define OP_CallBuiltinMethod3	0x54&lt;br /&gt;
#define OP_CallBuiltinMethod4	0x55&lt;br /&gt;
#define OP_CallBuiltinMethod5	0x56&lt;br /&gt;
#define OP_CallBuiltinMethod	0x57&lt;br /&gt;
#define OP_wait					0x58&lt;br /&gt;
#define OP_waittillFrameEnd		0x59&lt;br /&gt;
#define OP_PreScriptCall		0x5A&lt;br /&gt;
#define OP_ScriptFunctionCall2	0x5B&lt;br /&gt;
#define OP_ScriptFunctionCall	0x5C&lt;br /&gt;
#define OP_ScriptMethodCall	0x5D&lt;br /&gt;
#define OP_ScriptThreadCall			0x5E&lt;br /&gt;
#define OP_ScriptThreadCall2	0x5F&lt;br /&gt;
#define OP_ScriptMethodThreadCall			0x60&lt;br /&gt;
#define OP_opcode97			0x61&lt;br /&gt;
#define OP_ScriptFunctionFarCall2		0x62&lt;br /&gt;
#define OP_ScriptFunctionFarCall		0x63&lt;br /&gt;
#define OP_ScriptMethodFarCall	0x64&lt;br /&gt;
#define OP_ScriptThreadFarCall				0x65&lt;br /&gt;
#define OP_opcode102		0x66&lt;br /&gt;
#define OP_ScriptMethodThreadFarCall			0x67&lt;br /&gt;
#define OP_opcode104			0x68&lt;br /&gt;
#define OP_ScriptFunctionCallPointer			0x69&lt;br /&gt;
#define OP_ScriptMethodCallPointer			0x6A&lt;br /&gt;
#define OP_ScriptThreadCallPointer			0x6B&lt;br /&gt;
 #define OP_opcode108			0x6C&lt;br /&gt;
#define OP_ScriptMethodThreadCallPointer			0x6D&lt;br /&gt;
 #define OP_opcode110			0x6E&lt;br /&gt;
 #define OP_opcode111			0x6F&lt;br /&gt;
 #define OP_opcode112			0x70&lt;br /&gt;
#define OP_DecTop			0x71&lt;br /&gt;
#define OP_CastFieldObject			0x72&lt;br /&gt;
#define OP_EvalLocalVariableObjectCached			0x73&lt;br /&gt;
#define OP_CastBool			0x74&lt;br /&gt;
#define OP_BoolNot				0x75&lt;br /&gt;
#define OP_BoolComplement		0x76&lt;br /&gt;
#define OP_JumpOnFalse			0x77&lt;br /&gt;
#define OP_JumpOnTrue			0x78&lt;br /&gt;
#define OP_JumpOnFalseExpr		0x79&lt;br /&gt;
#define OP_JumpOnTrueExpr		0x7A&lt;br /&gt;
#define OP_jump				0x7B&lt;br /&gt;
#define OP_jumpback			0x7C&lt;br /&gt;
#define OP_inc				0x7D&lt;br /&gt;
#define OP_dec				0x7E&lt;br /&gt;
#define OP_bit_or			0x7F&lt;br /&gt;
#define OP_bit_ex_or		0x80&lt;br /&gt;
#define OP_bit_and			0x81&lt;br /&gt;
#define OP_equality			0x82&lt;br /&gt;
#define OP_inequality		0x83&lt;br /&gt;
#define OP_less				0x84&lt;br /&gt;
#define OP_greater			0x85&lt;br /&gt;
#define OP_less_equal		0x86&lt;br /&gt;
#define OP_greater_equal	0x87&lt;br /&gt;
#define OP_shift_left		0x88&lt;br /&gt;
#define OP_shift_right		0x89&lt;br /&gt;
#define OP_plus				0x8A&lt;br /&gt;
#define OP_minus			0x8B&lt;br /&gt;
#define OP_multiply			0x8C&lt;br /&gt;
#define OP_divide			0x8F&lt;br /&gt;
#define OP_mod				0x8E&lt;br /&gt;
#define OP_size				0x8F&lt;br /&gt;
#define OP_waittillmatch		0x90&lt;br /&gt;
#define OP_NOP				0x91&lt;br /&gt;
#define OP_waittill			0x92&lt;br /&gt;
#define OP_notify			0x93&lt;br /&gt;
#define OP_endon			0x94&lt;br /&gt;
#define OP_voidCodepos		0x95&lt;br /&gt;
#define OP_switch			0x96&lt;br /&gt;
#define OP_endswitch		0x97&lt;br /&gt;
#define OP_vector			0x98&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== PC ====&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#define OP_End	0x0&lt;br /&gt;
#define OP_Return	0x1&lt;br /&gt;
#define OP_GetByte	0x2&lt;br /&gt;
#define OP_GetNegByte	0x3&lt;br /&gt;
#define OP_GetUnsignedShort	0x4&lt;br /&gt;
#define OP_GetNegUnsignedShort	0x5&lt;br /&gt;
#define OP_GetInteger	0x6&lt;br /&gt;
#define OP_GetBuiltinFunction	0x7&lt;br /&gt;
#define OP_GetBuiltinMethod	0x8&lt;br /&gt;
#define OP_GetFloat	0x9&lt;br /&gt;
#define OP_GetString	0xA&lt;br /&gt;
#define OP_GetUndefined	0xB&lt;br /&gt;
#define OP_GetZero	0xC&lt;br /&gt;
#define OP_waittillFrameEnd		0xD&lt;br /&gt;
#define OP_CreateLocalVariable	0xE&lt;br /&gt;
#define OP_RemoveLocalVariables	0xF&lt;br /&gt;
#define OP_EvalLocalVariableCached0	0x10&lt;br /&gt;
#define OP_EvalLocalVariableCached1	0x11&lt;br /&gt;
#define OP_EvalLocalVariableCached2	0x12&lt;br /&gt;
#define OP_EvalLocalVariableCached3	0x13&lt;br /&gt;
#define OP_EvalLocalVariableCached4	0x14&lt;br /&gt;
#define OP_EvalLocalVariableCached5	0x15&lt;br /&gt;
#define OP_EvalLocalVariableCached	0x16&lt;br /&gt;
#define OP_EvalLocalArrayCached	0x17&lt;br /&gt;
#define OP_EvalArray	0x18&lt;br /&gt;
#define OP_opcode39	0x19&lt;br /&gt;
#define OP_EvalLocalArrayRefCached0	0x1A&lt;br /&gt;
#define OP_EvalLocalArrayRefCached	0x1B&lt;br /&gt;
#define OP_EvalArrayRef	0x1C&lt;br /&gt;
#define OP_ClearArray	0x1D&lt;br /&gt;
#define OP_EmptyArray	0x1E&lt;br /&gt;
 #define OP_opcode44	0x1F&lt;br /&gt;
#define OP_PreScriptCall	0x20&lt;br /&gt;
#define OP_ScriptFunctionCall2	0x21&lt;br /&gt;
#define OP_ScriptFunctionCall	0x22&lt;br /&gt;
#define OP_ScriptMethodCall	0x23&lt;br /&gt;
#define OP_ScriptThreadCall	0x24&lt;br /&gt;
#define OP_ScriptThreadCall2	0x25&lt;br /&gt;
#define OP_ScriptMethodThreadCall	0x26&lt;br /&gt;
 #define OP_opcode97	0x27&lt;br /&gt;
#define OP_ScriptFunctionFarCall2	0x28&lt;br /&gt;
#define OP_ScriptFunctionFarCall	0x29&lt;br /&gt;
#define OP_ScriptMethodFarCall	0x2A&lt;br /&gt;
#define OP_ScriptThreadFarCall	0x2B&lt;br /&gt;
 #define OP_opcode102	0x2C&lt;br /&gt;
#define OP_ScriptMethodThreadFarCall	0x2D&lt;br /&gt;
 #define OP_opcode104	0x2E&lt;br /&gt;
#define OP_ScriptFunctionCallPointer	0x2F&lt;br /&gt;
#define OP_ScriptMethodCallPointer		0x30&lt;br /&gt;
#define OP_ScriptThreadCallPointer		0x31&lt;br /&gt;
 #define OP_opcode108					0x32&lt;br /&gt;
#define OP_ScriptMethodThreadCallPointer	0x33&lt;br /&gt;
#define OP_opcode110	0x34&lt;br /&gt;
#define OP_opcode111	0x35&lt;br /&gt;
#define OP_opcode112	0x36&lt;br /&gt;
#define OP_GetIString	0x37&lt;br /&gt;
#define OP_GetVector	0x38&lt;br /&gt;
#define OP_GetLevelObject	0x39&lt;br /&gt;
#define OP_GetAnimObject	0x3A&lt;br /&gt;
#define OP_GetSelf	0x3B&lt;br /&gt;
#define OP_GetThread	0x3C&lt;br /&gt;
#define OP_GetLevel	0x3D&lt;br /&gt;
#define OP_GetGame	0x3E&lt;br /&gt;
#define OP_GetAnim	0x3F&lt;br /&gt;
#define OP_GetAnimation	0x40&lt;br /&gt;
#define OP_GetGameRef	0x41&lt;br /&gt;
#define OP_inc	0x42&lt;br /&gt;
#define OP_dec	0x43&lt;br /&gt;
#define OP_bit_or	0x44&lt;br /&gt;
#define OP_JumpOnFalseExpr	0x45&lt;br /&gt;
#define OP_bit_ex_or	0x46&lt;br /&gt;
#define OP_bit_and	0x47&lt;br /&gt;
#define OP_equality	0x48&lt;br /&gt;
#define OP_inequality	0x49&lt;br /&gt;
#define OP_less	0x4A&lt;br /&gt;
#define OP_greater	0x4B&lt;br /&gt;
#define OP_JumpOnTrueExpr	0x4C&lt;br /&gt;
#define OP_less_equal	0x4D&lt;br /&gt;
#define OP_jumpback	0x4E&lt;br /&gt;
#define OP_NOP		0x4F&lt;br /&gt;
#define OP_waittill	0x50&lt;br /&gt;
#define OP_notify	0x51&lt;br /&gt;
#define OP_endon	0x52&lt;br /&gt;
#define OP_voidCodepos	0x53&lt;br /&gt;
#define OP_switch	0x54&lt;br /&gt;
#define OP_endswitch	0x55&lt;br /&gt;
#define OP_vector	0x56&lt;br /&gt;
#define OP_JumpOnFalse	0x57&lt;br /&gt;
#define OP_greater_equal	0x58&lt;br /&gt;
#define OP_shift_left	0x59&lt;br /&gt;
#define OP_shift_right	0x5A&lt;br /&gt;
#define OP_plus	0x5B&lt;br /&gt;
#define OP_jump	0x5C&lt;br /&gt;
#define OP_minus	0x5D&lt;br /&gt;
#define OP_multiply	0x5E&lt;br /&gt;
#define OP_divide	0x5F&lt;br /&gt;
#define OP_mod	0x60&lt;br /&gt;
#define OP_JumpOnTrue	0x61&lt;br /&gt;
#define OP_size	0x62&lt;br /&gt;
#define OP_waittillmatch	0x63&lt;br /&gt;
#define OP_GetMethod	0x64&lt;br /&gt;
#define OP_GetFunction	0x65&lt;br /&gt;
#define OP_GetSelfObject	0x66&lt;br /&gt;
#define OP_EvalLevelFieldVariable	0x67&lt;br /&gt;
#define OP_EvalAnimFieldVariable	0x68&lt;br /&gt;
#define OP_EvalSelfFieldVariable	0x69&lt;br /&gt;
#define OP_EvalFieldVariable	0x6A&lt;br /&gt;
#define OP_EvalLevelFieldVariableRef	0x6B&lt;br /&gt;
#define OP_EvalAnimFieldVariableRef	0x6C&lt;br /&gt;
#define OP_EvalSelfFieldVariableRef	0x6D&lt;br /&gt;
#define OP_EvalFieldVariableRef	0x6E&lt;br /&gt;
#define OP_ClearFieldVariable	0x6F&lt;br /&gt;
#define OP_SafeCreateVariableFieldCached	0x70&lt;br /&gt;
#define OP_SafeSetVariableFieldCached0	0x71&lt;br /&gt;
#define OP_SafeSetVariableFieldCached		0x72&lt;br /&gt;
#define OP_SafeSetWaittillVariableFieldCached	0x73&lt;br /&gt;
#define OP_GetAnimTree	0x74&lt;br /&gt;
#define OP_clearparams	0x75&lt;br /&gt;
#define OP_checkclearparams				0x76&lt;br /&gt;
#define OP_EvalLocalVariableRefCached0	0x77&lt;br /&gt;
	// nop&lt;br /&gt;
#define OP_EvalLocalVariableRefCached	0x79&lt;br /&gt;
#define OP_SetLevelFieldVariableField	0x7A&lt;br /&gt;
#define OP_SetVariableField				0x7B&lt;br /&gt;
	// nop&lt;br /&gt;
#define OP_SetAnimFieldVariableField	0x7D&lt;br /&gt;
#define OP_SetSelfFieldVariableField	0x7E&lt;br /&gt;
#define OP_SetLocalVariableFieldCached0	0x7F&lt;br /&gt;
#define OP_CreateLocalVariable2		0x80&lt;br /&gt;
#define OP_SetLocalVariableFieldCached	0x81&lt;br /&gt;
 #define OP_opcode72		0x82&lt;br /&gt;
 #define OP_opcode73		0x83&lt;br /&gt;
#define OP_CallBuiltin0	0x84&lt;br /&gt;
#define OP_CallBuiltin1	0x85&lt;br /&gt;
#define OP_CallBuiltin2	0x86&lt;br /&gt;
#define OP_CallBuiltin3	0x87&lt;br /&gt;
#define OP_CallBuiltin4	0x88&lt;br /&gt;
#define OP_CallBuiltin5	0x89&lt;br /&gt;
#define OP_CallBuiltin	0x8A&lt;br /&gt;
#define OP_CallBuiltinMethod0	0x8B&lt;br /&gt;
#define OP_CallBuiltinMethod1	0x8C&lt;br /&gt;
#define OP_CallBuiltinMethod2	0x8D&lt;br /&gt;
#define OP_CallBuiltinMethod3	0x8E&lt;br /&gt;
#define OP_CallBuiltinMethod4	0x8F&lt;br /&gt;
#define OP_CallBuiltinMethod5	0x90&lt;br /&gt;
#define OP_CallBuiltinMethod	0x91&lt;br /&gt;
#define OP_wait		0x92&lt;br /&gt;
#define OP_DecTop	0x93&lt;br /&gt;
#define OP_CastFieldObject	0x94&lt;br /&gt;
#define OP_EvalLocalVariableObjectCached 0x95&lt;br /&gt;
#define OP_CastBool	0x96&lt;br /&gt;
#define OP_BoolNot	0x97&lt;br /&gt;
#define OP_BoolComplement 0x98&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Ghosts ===&lt;br /&gt;
The opcodes for Ghosts do the exact same thing as the Modern Warfare 3 opcodes, only their values seem to be scrambled in some way.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#define OP_CastFieldObject			0x1D&lt;br /&gt;
#define OP_SetLocalVariableFieldCached	0x1E&lt;br /&gt;
#define OP_plus				0x1F&lt;br /&gt;
#define OP_RemoveLocalVariables		0x20&lt;br /&gt;
#define OP_EvalSelfFieldVariableRef	0x21&lt;br /&gt;
#define OP_opcode104	0x22&lt;br /&gt;
#define OP_GetGameRef			0x23&lt;br /&gt;
#define OP_EvalAnimFieldVariable	0x24&lt;br /&gt;
#define OP_EvalLevelFieldVariableRef	0x25&lt;br /&gt;
#define OP_GetThread		0x26&lt;br /&gt;
#define OP_greater		0x27&lt;br /&gt;
#define OP_waittillmatch	0x28&lt;br /&gt;
#define OP_shift_right		0x29&lt;br /&gt;
#define OP_dec			0x2A&lt;br /&gt;
#define OP_JumpOnTrue	0x2B&lt;br /&gt;
#define OP_bit_or	0x2C&lt;br /&gt;
#define OP_equality	0x2D&lt;br /&gt;
#define OP_opcode73	0x2E&lt;br /&gt;
#define OP_notify	0x2F&lt;br /&gt;
#define OP_GetVector	0x30&lt;br /&gt;
#define OP_opcode110	0x31&lt;br /&gt;
#define OP_voidCodepos	0x32&lt;br /&gt;
#define OP_GetByte	0x33&lt;br /&gt;
#define OP_ScriptMethodThreadFarCall		0x34&lt;br /&gt;
#define OP_SetSelfFieldVariableField	0x35&lt;br /&gt;
#define OP_JumpOnFalseExpr		0x36&lt;br /&gt;
#define OP_GetUndefined		0x37&lt;br /&gt;
#define OP_jumpback		0x38&lt;br /&gt;
#define OP_JumpOnTrueExpr	0x39&lt;br /&gt;
#define OP_CallBuiltin0		0x3A&lt;br /&gt;
#define OP_CallBuiltin1		0x3B&lt;br /&gt;
#define OP_CallBuiltin2		0x3C&lt;br /&gt;
#define OP_CallBuiltin3		0x3D&lt;br /&gt;
#define OP_CallBuiltin4		0x3E&lt;br /&gt;
#define OP_CallBuiltin5		0x3F&lt;br /&gt;
#define OP_CallBuiltin		0x40&lt;br /&gt;
#define OP_SetLocalVariableFieldCached0		0x41&lt;br /&gt;
#define OP_ClearFieldVariable	0x42&lt;br /&gt;
#define OP_GetLevel		0x43&lt;br /&gt;
#define OP_size			0x44&lt;br /&gt;
#define OP_SafeSetWaittillVariableFieldCached	0x45&lt;br /&gt;
#define OP_ScriptThreadCall			0x46&lt;br /&gt;
#define OP_opcode44			0x47&lt;br /&gt;
#define OP_endon			0x48&lt;br /&gt;
#define OP_EvalFieldVariable		0x49&lt;br /&gt;
#define OP_shift_left			0x4A&lt;br /&gt;
#define OP_EvalLocalArrayRefCached0	0x4B&lt;br /&gt;
#define OP_Return			0x4C&lt;br /&gt;
#define OP_CreateLocalVariable		0x4D&lt;br /&gt;
#define OP_SafeSetVariableFieldCached0	0x4E&lt;br /&gt;
#define OP_GetBuiltinFunction		0x4F&lt;br /&gt;
#define OP_ScriptMethodCall	0x50&lt;br /&gt;
#define OP_opcode112			0x51&lt;br /&gt;
#define OP_ScriptThreadCall2		0x52&lt;br /&gt;
#define OP_GetSelfObject		0x53&lt;br /&gt;
#define OP_GetGame			0x54&lt;br /&gt;
#define OP_SetLevelFieldVariableField	0x55&lt;br /&gt;
#define OP_EvalArray			0x56&lt;br /&gt;
#define OP_GetSelf			0x57&lt;br /&gt;
#define OP_End				0x58&lt;br /&gt;
#define OP_EvalSelfFieldVariable	0x59&lt;br /&gt;
#define OP_less_equal			0x5A&lt;br /&gt;
#define OP_EvalLocalVariableCached0	0x5B&lt;br /&gt;
#define OP_EvalLocalVariableCached1	0x5C&lt;br /&gt;
#define OP_EvalLocalVariableCached2	0x5D&lt;br /&gt;
#define OP_EvalLocalVariableCached3	0x5E&lt;br /&gt;
#define OP_EvalLocalVariableCached4	0x5F&lt;br /&gt;
#define OP_EvalLocalVariableCached5	0x60&lt;br /&gt;
#define OP_EvalLocalVariableCached	0x61&lt;br /&gt;
#define OP_opcode39		0x62&lt;br /&gt;
#define OP_opcode108		0x63&lt;br /&gt;
#define OP_EvalLocalVariableObjectCached		0x64&lt;br /&gt;
#define OP_ScriptMethodThreadCall	0x65&lt;br /&gt;
#define OP_GetInteger		0x66&lt;br /&gt;
#define OP_ScriptMethodCallPointer		0x67&lt;br /&gt;
#define OP_checkclearparams	0x68&lt;br /&gt;
#define OP_SetAnimFieldVariableField	0x69&lt;br /&gt;
// nop&lt;br /&gt;
#define OP_minus  0x6B&lt;br /&gt;
#define OP_ScriptFunctionCall2 0x6C&lt;br /&gt;
#define OP_GetNegUnsignedShort 0x6D&lt;br /&gt;
#define OP_GetNegByte		0x6E&lt;br /&gt;
#define OP_SafeCreateVariableFieldCached	0x6F&lt;br /&gt;
#define OP_greater_equal	0x70&lt;br /&gt;
#define OP_vector		0x71&lt;br /&gt;
#define OP_GetBuiltinMethod	0x72&lt;br /&gt;
#define OP_endswitch	0x73&lt;br /&gt;
#define OP_ClearArray	0x74&lt;br /&gt;
#define OP_DecTop	0x75&lt;br /&gt;
#define OP_CastBool	0x76&lt;br /&gt;
#define OP_EvalArrayRef	0x77&lt;br /&gt;
#define OP_CreateLocalVariable2		0x78&lt;br /&gt;
#define OP_GetZero			0x79&lt;br /&gt;
#define OP_wait				0x7A&lt;br /&gt;
#define OP_waittill			0x7B&lt;br /&gt;
#define OP_GetIString			0x7C&lt;br /&gt;
#define OP_ScriptFunctionFarCall	0x7D&lt;br /&gt;
#define OP_GetAnimObject		0x7E&lt;br /&gt;
#define OP_GetAnimTree			0x7F&lt;br /&gt;
#define OP_EvalLocalArrayCached		0x80&lt;br /&gt;
#define OP_mod				0x81&lt;br /&gt;
#define OP_ScriptThreadFarCall		0x82&lt;br /&gt;
#define OP_GetUnsignedShort		0x83&lt;br /&gt;
#define OP_clearparams		0x84&lt;br /&gt;
#define OP_ScriptMethodThreadCallPointer		0x85&lt;br /&gt;
#define OP_ScriptFunctionCallPointer		0x86&lt;br /&gt;
#define OP_EmptyArray		0x87&lt;br /&gt;
#define OP_SafeSetVariableFieldCached	0x88&lt;br /&gt;
// nop&lt;br /&gt;
#define OP_EvalFieldVariableRef		0x8A&lt;br /&gt;
#define OP_opcode97	0x8B&lt;br /&gt;
// nop&lt;br /&gt;
#define OP_GetFloat			0x8D&lt;br /&gt;
#define OP_EvalLocalVariableRefCached	0x8E&lt;br /&gt;
#define OP_JumpOnFalse			0x8F&lt;br /&gt;
#define OP_BoolComplement		0x90&lt;br /&gt;
#define OP_ScriptThreadCallPointer			0x91&lt;br /&gt;
#define OP_ScriptFunctionFarCall2	0x92&lt;br /&gt;
#define OP_less				0x93&lt;br /&gt;
#define OP_BoolNot			0x94&lt;br /&gt;
#define OP_waittillFrameEnd		0x95&lt;br /&gt;
#define OP_GetString			0x96&lt;br /&gt;
#define OP_EvalLevelFieldVariable	0x97&lt;br /&gt;
#define OP_GetLevelObject	0x98&lt;br /&gt;
#define OP_inc			0x99&lt;br /&gt;
#define OP_CallBuiltinMethod0	0x9A&lt;br /&gt;
#define OP_CallBuiltinMethod1	0x9B&lt;br /&gt;
#define OP_CallBuiltinMethod2	0x9C&lt;br /&gt;
#define OP_CallBuiltinMethod3	0x9D&lt;br /&gt;
#define OP_CallBuiltinMethod4	0x9E&lt;br /&gt;
#define OP_CallBuiltinMethod5	0x9F&lt;br /&gt;
#define OP_CallBuiltinMethod	0xA0&lt;br /&gt;
#define OP_GetAnim		0xA1&lt;br /&gt;
#define OP_switch		0xA2&lt;br /&gt;
#define OP_SetVariableField	0xA3&lt;br /&gt;
#define OP_divide		0xA4&lt;br /&gt;
#define OP_GetMethod		0xA5&lt;br /&gt;
#define OP_opcode102	0xA6&lt;br /&gt;
#define OP_multiply			0xA7&lt;br /&gt;
#define OP_opcode72			0xA8&lt;br /&gt;
#define OP_EvalAnimFieldVariableRef	0xA9&lt;br /&gt;
#define OP_EvalLocalArrayRefCached	0xAA&lt;br /&gt;
#define OP_EvalLocalVariableRefCached0	0xAB&lt;br /&gt;
#define OP_bit_and			0xAC&lt;br /&gt;
#define OP_GetAnimation			0xAD&lt;br /&gt;
#define OP_GetFunction			0xAE&lt;br /&gt;
#define OP_opcode111			0xAF&lt;br /&gt;
#define OP_jump				0xB0&lt;br /&gt;
#define OP_PreScriptCall		0xB1&lt;br /&gt;
#define OP_ScriptMethodFarCall	0xB2&lt;br /&gt;
#define OP_inequality		0xB3&lt;br /&gt;
#define OP_ScriptFunctionCall	0xB4&lt;br /&gt;
#define OP_bit_ex_or		0xB5&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Method List ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!rowspan=&amp;quot;2&amp;quot;|Method&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|MW3&lt;br /&gt;
|-&lt;br /&gt;
!PC ID&lt;br /&gt;
!PS3/XBOX ID&lt;br /&gt;
&amp;lt;!-- builtin --&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|attach&lt;br /&gt;
|0x8017&lt;br /&gt;
|0x8000&lt;br /&gt;
|-&lt;br /&gt;
|attachshieldmodel&lt;br /&gt;
|0x8018&lt;br /&gt;
|0x8001&lt;br /&gt;
|-&lt;br /&gt;
|detach&lt;br /&gt;
|0x8024&lt;br /&gt;
|0x8002&lt;br /&gt;
|-&lt;br /&gt;
|detachshieldmodel&lt;br /&gt;
|0x8025&lt;br /&gt;
|0x8003&lt;br /&gt;
|-&lt;br /&gt;
|moveshieldmodel&lt;br /&gt;
|0x8026&lt;br /&gt;
|0x8004&lt;br /&gt;
|-&lt;br /&gt;
|detachall&lt;br /&gt;
|0x8027&lt;br /&gt;
|0x8005&lt;br /&gt;
|-&lt;br /&gt;
|getattachsize&lt;br /&gt;
|0x8028&lt;br /&gt;
|0x8006&lt;br /&gt;
|-&lt;br /&gt;
|getattachmodelname&lt;br /&gt;
|0x8029&lt;br /&gt;
|0x8007&lt;br /&gt;
|-&lt;br /&gt;
|getattachtagname&lt;br /&gt;
|0x802a&lt;br /&gt;
|0x8008&lt;br /&gt;
|-&lt;br /&gt;
|getattachignorecollision&lt;br /&gt;
|0x8043&lt;br /&gt;
|0x8009&lt;br /&gt;
|-&lt;br /&gt;
|hidepart&lt;br /&gt;
|0x8044&lt;br /&gt;
|0x800a&lt;br /&gt;
|-&lt;br /&gt;
|allinstances&lt;br /&gt;
|0x8045&lt;br /&gt;
|0x800b&lt;br /&gt;
|-&lt;br /&gt;
|hideallparts&lt;br /&gt;
|0x8046&lt;br /&gt;
|0x800c&lt;br /&gt;
|-&lt;br /&gt;
|showpart&lt;br /&gt;
|0x8047&lt;br /&gt;
|0x800d&lt;br /&gt;
|-&lt;br /&gt;
|showallparts&lt;br /&gt;
|0x8048&lt;br /&gt;
|0x800e&lt;br /&gt;
|-&lt;br /&gt;
|linkto&lt;br /&gt;
|0x8049&lt;br /&gt;
|0x800f&lt;br /&gt;
|-&lt;br /&gt;
|linktoblendtotag&lt;br /&gt;
|0x804a&lt;br /&gt;
|0x8010&lt;br /&gt;
|-&lt;br /&gt;
|unlink&lt;br /&gt;
|0x804b&lt;br /&gt;
|0x8011&lt;br /&gt;
|-&lt;br /&gt;
|islinked&lt;br /&gt;
|0x8063&lt;br /&gt;
|0x8012&lt;br /&gt;
|-&lt;br /&gt;
|enablelinkto&lt;br /&gt;
|0x8064&lt;br /&gt;
|0x8013&lt;br /&gt;
|-&lt;br /&gt;
|playerlinkto&lt;br /&gt;
|0x8075&lt;br /&gt;
|0x8014&lt;br /&gt;
|-&lt;br /&gt;
|playerlinktodelta&lt;br /&gt;
|0x8076&lt;br /&gt;
|0x8015&lt;br /&gt;
|-&lt;br /&gt;
|playerlinkweaponviewtodelta&lt;br /&gt;
|0x8077&lt;br /&gt;
|0x8016&lt;br /&gt;
|-&lt;br /&gt;
|playerlinktoabsolute&lt;br /&gt;
|0x8078&lt;br /&gt;
|0x8017&lt;br /&gt;
|-&lt;br /&gt;
|playerlinktoblend&lt;br /&gt;
|0x8079&lt;br /&gt;
|0x8018&lt;br /&gt;
|-&lt;br /&gt;
|playerlinkedoffsetenable&lt;br /&gt;
|0x807a&lt;br /&gt;
|0x8019&lt;br /&gt;
|-&lt;br /&gt;
|playerlinkedoffsetdisable&lt;br /&gt;
|0x8094&lt;br /&gt;
|0x801a&lt;br /&gt;
|-&lt;br /&gt;
|playerlinkedsetviewznear&lt;br /&gt;
|0x8095&lt;br /&gt;
|0x801b&lt;br /&gt;
|-&lt;br /&gt;
|playerlinkedsetusebaseangleforviewclamp&lt;br /&gt;
|0x8096&lt;br /&gt;
|0x801c&lt;br /&gt;
|-&lt;br /&gt;
|lerpviewangleclamp&lt;br /&gt;
|0x8097&lt;br /&gt;
|0x801d&lt;br /&gt;
|-&lt;br /&gt;
|setviewangleresistance&lt;br /&gt;
|0x8098&lt;br /&gt;
|0x801e&lt;br /&gt;
|-&lt;br /&gt;
|geteye&lt;br /&gt;
|0x8099&lt;br /&gt;
|0x801f&lt;br /&gt;
|-&lt;br /&gt;
|istouching&lt;br /&gt;
|0x809a&lt;br /&gt;
|0x8020&lt;br /&gt;
|-&lt;br /&gt;
|stoploopsound&lt;br /&gt;
|0x809b&lt;br /&gt;
|0x8021&lt;br /&gt;
|-&lt;br /&gt;
|stopsounds&lt;br /&gt;
|0x809c&lt;br /&gt;
|0x8022&lt;br /&gt;
|-&lt;br /&gt;
|playrumbleonentity&lt;br /&gt;
|0x809d&lt;br /&gt;
|0x8023&lt;br /&gt;
|-&lt;br /&gt;
|playrumblelooponentity&lt;br /&gt;
|0x809e&lt;br /&gt;
|0x8024&lt;br /&gt;
|-&lt;br /&gt;
|stoprumble&lt;br /&gt;
|0x809f&lt;br /&gt;
|0x8025&lt;br /&gt;
|-&lt;br /&gt;
|delete&lt;br /&gt;
|0x80a0&lt;br /&gt;
|0x8026&lt;br /&gt;
|-&lt;br /&gt;
|setmodel&lt;br /&gt;
|0x80a1&lt;br /&gt;
|0x8027&lt;br /&gt;
|-&lt;br /&gt;
|laseron&lt;br /&gt;
|0x80a2&lt;br /&gt;
|0x8028&lt;br /&gt;
|-&lt;br /&gt;
|laseroff&lt;br /&gt;
|0x80a3&lt;br /&gt;
|0x8029&lt;br /&gt;
|-&lt;br /&gt;
|laseraltviewon&lt;br /&gt;
|0x80a4&lt;br /&gt;
|0x802a&lt;br /&gt;
|-&lt;br /&gt;
|laseraltviewoff&lt;br /&gt;
|0x80a5&lt;br /&gt;
|0x802b&lt;br /&gt;
|-&lt;br /&gt;
|thermalvisionon&lt;br /&gt;
|0x80a6&lt;br /&gt;
|0x802c&lt;br /&gt;
|-&lt;br /&gt;
|thermalvisionoff&lt;br /&gt;
|0x80a7&lt;br /&gt;
|0x802d&lt;br /&gt;
|-&lt;br /&gt;
|unknown&lt;br /&gt;
|0x8023&lt;br /&gt;
|0x82ef&lt;br /&gt;
|-&lt;br /&gt;
|unknown&lt;br /&gt;
|0x8000&lt;br /&gt;
|0x82f0&lt;br /&gt;
|-&lt;br /&gt;
|thermalvisionfofoverlayon&lt;br /&gt;
|0x80a8&lt;br /&gt;
|0x802e&lt;br /&gt;
|-&lt;br /&gt;
|thermalvisionfofoverlayoff&lt;br /&gt;
|0x80a9&lt;br /&gt;
|0x802f&lt;br /&gt;
|-&lt;br /&gt;
|autospotoverlayon&lt;br /&gt;
|0x80aa&lt;br /&gt;
|0x8030&lt;br /&gt;
|-&lt;br /&gt;
|autospotoverlayoff&lt;br /&gt;
|0x80ab&lt;br /&gt;
|0x8031&lt;br /&gt;
|-&lt;br /&gt;
|setcontents&lt;br /&gt;
|0x80ac&lt;br /&gt;
|0x8032&lt;br /&gt;
|-&lt;br /&gt;
|makeusable&lt;br /&gt;
|0x80ad&lt;br /&gt;
|0x8033&lt;br /&gt;
|-&lt;br /&gt;
|makeunusable&lt;br /&gt;
|0x80ae&lt;br /&gt;
|0x8034&lt;br /&gt;
|-&lt;br /&gt;
|setcursorhint&lt;br /&gt;
|0x80c6&lt;br /&gt;
|0x8035&lt;br /&gt;
|-&lt;br /&gt;
|sethintstring&lt;br /&gt;
|0x80c7&lt;br /&gt;
|0x8036&lt;br /&gt;
|-&lt;br /&gt;
|forceusehinton&lt;br /&gt;
|0x80c8&lt;br /&gt;
|0x8037&lt;br /&gt;
|-&lt;br /&gt;
|forceusehintoff&lt;br /&gt;
|0x80c9&lt;br /&gt;
|0x8038&lt;br /&gt;
|-&lt;br /&gt;
|makesoft&lt;br /&gt;
|0x80ca&lt;br /&gt;
|0x8039&lt;br /&gt;
|-&lt;br /&gt;
|makehard&lt;br /&gt;
|0x80cb&lt;br /&gt;
|0x803a&lt;br /&gt;
|-&lt;br /&gt;
|willneverchange&lt;br /&gt;
|0x80cc&lt;br /&gt;
|0x803b&lt;br /&gt;
|-&lt;br /&gt;
|startfiring&lt;br /&gt;
|0x80cd&lt;br /&gt;
|0x803c&lt;br /&gt;
|-&lt;br /&gt;
|stopfiring&lt;br /&gt;
|0x80ce&lt;br /&gt;
|0x803d&lt;br /&gt;
|-&lt;br /&gt;
|isfiringturret&lt;br /&gt;
|0x80cf&lt;br /&gt;
|0x803e&lt;br /&gt;
|-&lt;br /&gt;
|startbarrelspin&lt;br /&gt;
|0x80d0&lt;br /&gt;
|0x803f&lt;br /&gt;
|-&lt;br /&gt;
|stopbarrelspin&lt;br /&gt;
|0x80d1&lt;br /&gt;
|0x8040&lt;br /&gt;
|-&lt;br /&gt;
|getbarrelspinrate&lt;br /&gt;
|0x80d2&lt;br /&gt;
|0x8041&lt;br /&gt;
|-&lt;br /&gt;
|remotecontrolturret&lt;br /&gt;
|0x80d3&lt;br /&gt;
|0x8042&lt;br /&gt;
|-&lt;br /&gt;
|remotecontrolturretoff&lt;br /&gt;
|0x80d4&lt;br /&gt;
|0x8043&lt;br /&gt;
|-&lt;br /&gt;
|shootturret&lt;br /&gt;
|0x80d5&lt;br /&gt;
|0x8044&lt;br /&gt;
|-&lt;br /&gt;
|getturretowner&lt;br /&gt;
|0x80d6&lt;br /&gt;
|0x8045&lt;br /&gt;
|-&lt;br /&gt;
|setsentryowner&lt;br /&gt;
|0x80ee&lt;br /&gt;
|0x8046&lt;br /&gt;
|-&lt;br /&gt;
|setsentrycarrier&lt;br /&gt;
|0x80ef&lt;br /&gt;
|0x8047&lt;br /&gt;
|-&lt;br /&gt;
|setturretminimapvisible&lt;br /&gt;
|0x80f0&lt;br /&gt;
|0x8048&lt;br /&gt;
|-&lt;br /&gt;
|settargetentity&lt;br /&gt;
|0x80f1&lt;br /&gt;
|0x8049&lt;br /&gt;
|-&lt;br /&gt;
|snaptotargetentity&lt;br /&gt;
|0x80f2&lt;br /&gt;
|0x804a&lt;br /&gt;
|-&lt;br /&gt;
|cleartargetentity&lt;br /&gt;
|0x80f3&lt;br /&gt;
|0x804b&lt;br /&gt;
|-&lt;br /&gt;
|getturrettarget&lt;br /&gt;
|0x80f4&lt;br /&gt;
|0x804c&lt;br /&gt;
|-&lt;br /&gt;
|setplayerspread&lt;br /&gt;
|0x80f5&lt;br /&gt;
|0x804d&lt;br /&gt;
|-&lt;br /&gt;
|setaispread&lt;br /&gt;
|0x80f6&lt;br /&gt;
|0x804e&lt;br /&gt;
|-&lt;br /&gt;
|setsuppressiontime&lt;br /&gt;
|0x80f7&lt;br /&gt;
|0x804f&lt;br /&gt;
|-&lt;br /&gt;
|setconvergencetime&lt;br /&gt;
|0x8119&lt;br /&gt;
|0x8050&lt;br /&gt;
|-&lt;br /&gt;
|setconvergenceheightpercent&lt;br /&gt;
|0x811a&lt;br /&gt;
|0x8051&lt;br /&gt;
|-&lt;br /&gt;
|setturretteam&lt;br /&gt;
|0x811b&lt;br /&gt;
|0x8052&lt;br /&gt;
|-&lt;br /&gt;
|maketurretsolid&lt;br /&gt;
|0x811c&lt;br /&gt;
|0x8053&lt;br /&gt;
|-&lt;br /&gt;
|maketurretoperable&lt;br /&gt;
|0x811d&lt;br /&gt;
|0x8054&lt;br /&gt;
|-&lt;br /&gt;
|maketurretinoperable&lt;br /&gt;
|0x811e&lt;br /&gt;
|0x8055&lt;br /&gt;
|-&lt;br /&gt;
|setturretaccuracy&lt;br /&gt;
|0x813a&lt;br /&gt;
|0x8056&lt;br /&gt;
|-&lt;br /&gt;
|setrightarc&lt;br /&gt;
|0x813b&lt;br /&gt;
|0x8057&lt;br /&gt;
|-&lt;br /&gt;
|setleftarc&lt;br /&gt;
|0x813c&lt;br /&gt;
|0x8058&lt;br /&gt;
|-&lt;br /&gt;
|settoparc&lt;br /&gt;
|0x813d&lt;br /&gt;
|0x8059&lt;br /&gt;
|-&lt;br /&gt;
|setbottomarc&lt;br /&gt;
|0x813e&lt;br /&gt;
|0x805a&lt;br /&gt;
|-&lt;br /&gt;
|setautorotationdelay&lt;br /&gt;
|0x813f&lt;br /&gt;
|0x805b&lt;br /&gt;
|-&lt;br /&gt;
|setdefaultdroppitch&lt;br /&gt;
|0x8140&lt;br /&gt;
|0x805c&lt;br /&gt;
|-&lt;br /&gt;
|restoredefaultdroppitch&lt;br /&gt;
|0x8141&lt;br /&gt;
|0x805d&lt;br /&gt;
|-&lt;br /&gt;
|turretfiredisable&lt;br /&gt;
|0x8142&lt;br /&gt;
|0x805e&lt;br /&gt;
|-&lt;br /&gt;
|turretfireenable&lt;br /&gt;
|0x8161&lt;br /&gt;
|0x805f&lt;br /&gt;
|-&lt;br /&gt;
|setturretmodechangewait&lt;br /&gt;
|0x8162&lt;br /&gt;
|0x8060&lt;br /&gt;
|-&lt;br /&gt;
|usetriggerrequirelookat&lt;br /&gt;
|0x8163&lt;br /&gt;
|0x8061&lt;br /&gt;
|-&lt;br /&gt;
|getstance&lt;br /&gt;
|0x8164&lt;br /&gt;
|0x8062&lt;br /&gt;
|-&lt;br /&gt;
|setstance&lt;br /&gt;
|0x8165&lt;br /&gt;
|0x8063&lt;br /&gt;
|-&lt;br /&gt;
|itemweaponsetammo&lt;br /&gt;
|0x8166&lt;br /&gt;
|0x8064&lt;br /&gt;
|-&lt;br /&gt;
|getammocount&lt;br /&gt;
|0x8167&lt;br /&gt;
|0x8065&lt;br /&gt;
|-&lt;br /&gt;
|gettagorigin&lt;br /&gt;
|0x8168&lt;br /&gt;
|0x8066&lt;br /&gt;
|-&lt;br /&gt;
|gettagangles&lt;br /&gt;
|0x8169&lt;br /&gt;
|0x8067&lt;br /&gt;
|-&lt;br /&gt;
|shellshock&lt;br /&gt;
|0x816a&lt;br /&gt;
|0x8068&lt;br /&gt;
|-&lt;br /&gt;
|stunplayer&lt;br /&gt;
|0x816b&lt;br /&gt;
|0x8069&lt;br /&gt;
|-&lt;br /&gt;
|stopshellshock&lt;br /&gt;
|0x816c&lt;br /&gt;
|0x806a&lt;br /&gt;
|-&lt;br /&gt;
|fadeoutshellshock&lt;br /&gt;
|0x816d&lt;br /&gt;
|0x806b&lt;br /&gt;
|-&lt;br /&gt;
|setdepthoffield&lt;br /&gt;
|0x816e&lt;br /&gt;
|0x806c&lt;br /&gt;
|-&lt;br /&gt;
|setviewmodeldepthoffield&lt;br /&gt;
|0x816f&lt;br /&gt;
|0x806d&lt;br /&gt;
|-&lt;br /&gt;
|setmotionblurmovescale&lt;br /&gt;
|0x8170&lt;br /&gt;
|0x806e&lt;br /&gt;
|-&lt;br /&gt;
|setmotionblurturnscale&lt;br /&gt;
|0x8190&lt;br /&gt;
|0x806f&lt;br /&gt;
|-&lt;br /&gt;
|setmotionblurzoomscale&lt;br /&gt;
|0x8191&lt;br /&gt;
|0x8070&lt;br /&gt;
|-&lt;br /&gt;
|viewkick&lt;br /&gt;
|0x8192&lt;br /&gt;
|0x8071&lt;br /&gt;
|-&lt;br /&gt;
|localtoworldcoords&lt;br /&gt;
|0x8193&lt;br /&gt;
|0x8072&lt;br /&gt;
|-&lt;br /&gt;
|getentitynumber&lt;br /&gt;
|0x8194&lt;br /&gt;
|0x8073&lt;br /&gt;
|-&lt;br /&gt;
|getentityvelocity&lt;br /&gt;
|0x8195&lt;br /&gt;
|0x8074&lt;br /&gt;
|-&lt;br /&gt;
|enablegrenadetouchdamage&lt;br /&gt;
|0x8196&lt;br /&gt;
|0x8075&lt;br /&gt;
|-&lt;br /&gt;
|disablegrenadetouchdamage&lt;br /&gt;
|0x8197&lt;br /&gt;
|0x8076&lt;br /&gt;
|-&lt;br /&gt;
|enableaimassist&lt;br /&gt;
|0x8198&lt;br /&gt;
|0x8077&lt;br /&gt;
|-&lt;br /&gt;
|disableaimassist&lt;br /&gt;
|0x81b7&lt;br /&gt;
|0x8078&lt;br /&gt;
|-&lt;br /&gt;
|radiusdamage&lt;br /&gt;
|0x81b8&lt;br /&gt;
|0x8079&lt;br /&gt;
|-&lt;br /&gt;
|detonate&lt;br /&gt;
|0x81b9&lt;br /&gt;
|0x807a&lt;br /&gt;
|-&lt;br /&gt;
|damageconetrace&lt;br /&gt;
|0x81ba&lt;br /&gt;
|0x807b&lt;br /&gt;
|-&lt;br /&gt;
|sightconetrace&lt;br /&gt;
|0x81bb&lt;br /&gt;
|0x807c&lt;br /&gt;
|-&lt;br /&gt;
|settargetent&lt;br /&gt;
|0x81bc&lt;br /&gt;
|0x807d&lt;br /&gt;
|-&lt;br /&gt;
|settargetpos&lt;br /&gt;
|0x81bd&lt;br /&gt;
|0x807e&lt;br /&gt;
|-&lt;br /&gt;
|cleartarget&lt;br /&gt;
|0x81be&lt;br /&gt;
|0x807f&lt;br /&gt;
|-&lt;br /&gt;
|setflightmodedirect&lt;br /&gt;
|0x81bf&lt;br /&gt;
|0x8080&lt;br /&gt;
|-&lt;br /&gt;
|setflightmodetop&lt;br /&gt;
|0x81c0&lt;br /&gt;
|0x8081&lt;br /&gt;
|-&lt;br /&gt;
|getlightintensity&lt;br /&gt;
|0x81c1&lt;br /&gt;
|0x8082&lt;br /&gt;
|-&lt;br /&gt;
|setlightintensity&lt;br /&gt;
|0x81c2&lt;br /&gt;
|0x8083&lt;br /&gt;
|-&lt;br /&gt;
|isragdoll&lt;br /&gt;
|0x81c3&lt;br /&gt;
|0x8084&lt;br /&gt;
|-&lt;br /&gt;
|setmovespeedscale&lt;br /&gt;
|0x81c4&lt;br /&gt;
|0x8085&lt;br /&gt;
|-&lt;br /&gt;
|cameralinkto&lt;br /&gt;
|0x81c5&lt;br /&gt;
|0x8086&lt;br /&gt;
|-&lt;br /&gt;
|cameraunlink&lt;br /&gt;
|0x81c6&lt;br /&gt;
|0x8087&lt;br /&gt;
|-&lt;br /&gt;
|controlslinkto&lt;br /&gt;
|0x81e3&lt;br /&gt;
|0x8088&lt;br /&gt;
|-&lt;br /&gt;
|controlsunlink&lt;br /&gt;
|0x81e4&lt;br /&gt;
|0x8089&lt;br /&gt;
|-&lt;br /&gt;
|makevehiclesolidcapsule&lt;br /&gt;
|0x81e5&lt;br /&gt;
|0x808a&lt;br /&gt;
|-&lt;br /&gt;
|makevehiclesolidsphere&lt;br /&gt;
|0x81e6&lt;br /&gt;
|0x808b&lt;br /&gt;
|-&lt;br /&gt;
|remotecontrolvehicle&lt;br /&gt;
|0x81e8&lt;br /&gt;
|0x808d&lt;br /&gt;
|-&lt;br /&gt;
|remotecontrolvehicleoff&lt;br /&gt;
|0x81e9&lt;br /&gt;
|0x808e&lt;br /&gt;
|-&lt;br /&gt;
|isfiringvehicleturret&lt;br /&gt;
|0x81ea&lt;br /&gt;
|0x808f&lt;br /&gt;
|-&lt;br /&gt;
|drivevehicleandcontrolturret&lt;br /&gt;
|0x81eb&lt;br /&gt;
|0x8090&lt;br /&gt;
|-&lt;br /&gt;
|drivevehicleandcontrolturretoff&lt;br /&gt;
|0x81ec&lt;br /&gt;
|0x8091&lt;br /&gt;
|-&lt;br /&gt;
|getplayersetting&lt;br /&gt;
|0x81ed&lt;br /&gt;
|0x8092&lt;br /&gt;
|-&lt;br /&gt;
|getlocalplayerprofiledata&lt;br /&gt;
|0x81ee&lt;br /&gt;
|0x8093&lt;br /&gt;
|-&lt;br /&gt;
|setlocalplayerprofiledata&lt;br /&gt;
|0x81ef&lt;br /&gt;
|0x8094&lt;br /&gt;
|-&lt;br /&gt;
|remotecamerasoundscapeon&lt;br /&gt;
|0x81f0&lt;br /&gt;
|0x8095&lt;br /&gt;
|-&lt;br /&gt;
|remotecamerasoundscapeoff&lt;br /&gt;
|0x81f1&lt;br /&gt;
|0x8096&lt;br /&gt;
|-&lt;br /&gt;
|radarjamon&lt;br /&gt;
|0x81f2&lt;br /&gt;
|0x8097&lt;br /&gt;
|-&lt;br /&gt;
|radarjamoff&lt;br /&gt;
|0x81f3&lt;br /&gt;
|0x8098&lt;br /&gt;
|-&lt;br /&gt;
|setmotiontrackervisible&lt;br /&gt;
|0x81f4&lt;br /&gt;
|0x8099&lt;br /&gt;
|-&lt;br /&gt;
|getmotiontrackervisible&lt;br /&gt;
|0x81f5&lt;br /&gt;
|0x809a&lt;br /&gt;
|-&lt;br /&gt;
|circle&lt;br /&gt;
|0x81f6&lt;br /&gt;
|0x809b&lt;br /&gt;
|-&lt;br /&gt;
|getpointinbounds&lt;br /&gt;
|0x81f7&lt;br /&gt;
|0x809c&lt;br /&gt;
|-&lt;br /&gt;
|transfermarkstonewscriptmodel&lt;br /&gt;
|0x81f8&lt;br /&gt;
|0x809d&lt;br /&gt;
|-&lt;br /&gt;
|setwatersheeting&lt;br /&gt;
|0x81f9&lt;br /&gt;
|0x809e&lt;br /&gt;
|-&lt;br /&gt;
|setweaponhudiconoverride&lt;br /&gt;
|0x81fa&lt;br /&gt;
|0x809f&lt;br /&gt;
|-&lt;br /&gt;
|getweaponhudiconoverride&lt;br /&gt;
|0x81fb&lt;br /&gt;
|0x80a0&lt;br /&gt;
|-&lt;br /&gt;
|setempjammed&lt;br /&gt;
|0x81fc&lt;br /&gt;
|0x80a1&lt;br /&gt;
|-&lt;br /&gt;
|playersetexpfog&lt;br /&gt;
|0x81fd&lt;br /&gt;
|0x80a2&lt;br /&gt;
|-&lt;br /&gt;
|isitemunlocked&lt;br /&gt;
|0x81fe&lt;br /&gt;
|0x80a3&lt;br /&gt;
|-&lt;br /&gt;
|getplayerdata&lt;br /&gt;
|0x81ff&lt;br /&gt;
|0x80a4&lt;br /&gt;
|-&lt;br /&gt;
|setplayerdata&lt;br /&gt;
|0x821a&lt;br /&gt;
|0x80a5&lt;br /&gt;
|-&lt;br /&gt;
|trackerupdate&lt;br /&gt;
|N/A&lt;br /&gt;
|0x80a6&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- player 1 --&amp;gt;&lt;br /&gt;
|pingplayer&lt;br /&gt;
|0x821c&lt;br /&gt;
|0x80a7&lt;br /&gt;
|-&lt;br /&gt;
|buttonpressed&lt;br /&gt;
|0x821d&lt;br /&gt;
|0x80a8&lt;br /&gt;
|-&lt;br /&gt;
|sayall&lt;br /&gt;
|0x821e&lt;br /&gt;
|0x80a9&lt;br /&gt;
|-&lt;br /&gt;
|sayteam&lt;br /&gt;
|0x821f&lt;br /&gt;
|0x80aa&lt;br /&gt;
|-&lt;br /&gt;
|showscoreboard&lt;br /&gt;
|0x8220&lt;br /&gt;
|0x80ab&lt;br /&gt;
|-&lt;br /&gt;
|setspawnweapon&lt;br /&gt;
|0x8221&lt;br /&gt;
|0x80ac&lt;br /&gt;
|-&lt;br /&gt;
|dropitem&lt;br /&gt;
|0x8222&lt;br /&gt;
|0x80ad&lt;br /&gt;
|-&lt;br /&gt;
|dropscavengerbag&lt;br /&gt;
|0x8223&lt;br /&gt;
|0x80ae&lt;br /&gt;
|-&lt;br /&gt;
|finishplayerdamage&lt;br /&gt;
|0x823c&lt;br /&gt;
|0x80af&lt;br /&gt;
|-&lt;br /&gt;
|suicide&lt;br /&gt;
|0x823d&lt;br /&gt;
|0x80b0&lt;br /&gt;
|-&lt;br /&gt;
|closeingamemenu&lt;br /&gt;
|0x823e&lt;br /&gt;
|0x80b1&lt;br /&gt;
|-&lt;br /&gt;
|iprintln&lt;br /&gt;
|0x823f&lt;br /&gt;
|0x80b2&lt;br /&gt;
|-&lt;br /&gt;
|iprintlnbold&lt;br /&gt;
|0x8240&lt;br /&gt;
|0x80b3&lt;br /&gt;
|-&lt;br /&gt;
|spawn&lt;br /&gt;
|0x8241&lt;br /&gt;
|0x80b4&lt;br /&gt;
|-&lt;br /&gt;
|setentertime&lt;br /&gt;
|0x8242&lt;br /&gt;
|0x80b5&lt;br /&gt;
|-&lt;br /&gt;
|cloneplayer&lt;br /&gt;
|0x8243&lt;br /&gt;
|0x80b6&lt;br /&gt;
|-&lt;br /&gt;
|istalking&lt;br /&gt;
|0x8244&lt;br /&gt;
|0x80b7&lt;br /&gt;
|-&lt;br /&gt;
|allowspectateteam&lt;br /&gt;
|0x8245&lt;br /&gt;
|0x80b8&lt;br /&gt;
|-&lt;br /&gt;
|getguid&lt;br /&gt;
|0x8246&lt;br /&gt;
|0x80b9&lt;br /&gt;
|-&lt;br /&gt;
|getxuid&lt;br /&gt;
|0x8266&lt;br /&gt;
|0x80ba&lt;br /&gt;
|-&lt;br /&gt;
|ishost&lt;br /&gt;
|0x8267&lt;br /&gt;
|0x80bb&lt;br /&gt;
|-&lt;br /&gt;
|getspectatingplayer&lt;br /&gt;
|0x8268&lt;br /&gt;
|0x80bc&lt;br /&gt;
|-&lt;br /&gt;
|predictstreampos&lt;br /&gt;
|0x8269&lt;br /&gt;
|0x80bd&lt;br /&gt;
|-&lt;br /&gt;
|updatescores&lt;br /&gt;
|0x826a&lt;br /&gt;
|0x80be&lt;br /&gt;
|-&lt;br /&gt;
|updatedmscores&lt;br /&gt;
|0x826b&lt;br /&gt;
|0x80bf&lt;br /&gt;
|-&lt;br /&gt;
|setrank&lt;br /&gt;
|0x826c&lt;br /&gt;
|0x80c0&lt;br /&gt;
|-&lt;br /&gt;
|setcardtitle&lt;br /&gt;
|0x826d&lt;br /&gt;
|0x80c1&lt;br /&gt;
|-&lt;br /&gt;
|setcardicon&lt;br /&gt;
|0x828c&lt;br /&gt;
|0x80c2&lt;br /&gt;
|-&lt;br /&gt;
|setcardnameplate&lt;br /&gt;
|0x828d&lt;br /&gt;
|0x80c3&lt;br /&gt;
|-&lt;br /&gt;
|setcarddisplayslot&lt;br /&gt;
|0x828e&lt;br /&gt;
|0x80c4&lt;br /&gt;
|-&lt;br /&gt;
|kc_regweaponforfxremoval&lt;br /&gt;
|0x828f&lt;br /&gt;
|0x80c5&lt;br /&gt;
|-&lt;br /&gt;
|laststandrevive&lt;br /&gt;
|0x8290&lt;br /&gt;
|0x80c6&lt;br /&gt;
|-&lt;br /&gt;
|setspectatedefaults&lt;br /&gt;
|0x8291&lt;br /&gt;
|0x80c7&lt;br /&gt;
|-&lt;br /&gt;
|getthirdpersoncrosshairoffset&lt;br /&gt;
|0x8292&lt;br /&gt;
|0x80c8&lt;br /&gt;
|-&lt;br /&gt;
|disableweaponpickup&lt;br /&gt;
|0x8293&lt;br /&gt;
|0x80c9&lt;br /&gt;
|-&lt;br /&gt;
|enableweaponpickup&lt;br /&gt;
|0x8294&lt;br /&gt;
|0x80ca&lt;br /&gt;
|-&lt;br /&gt;
|issplitscreenplayer&lt;br /&gt;
|N/A&lt;br /&gt;
|0x80cb&lt;br /&gt;
|-&lt;br /&gt;
|issplitscreenplayerprimary&lt;br /&gt;
|N/A&lt;br /&gt;
|0x80cc&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- player 2 --&amp;gt;&lt;br /&gt;
|getviewmodel&lt;br /&gt;
|0x82b1&lt;br /&gt;
|0x80cd&lt;br /&gt;
|-&lt;br /&gt;
|fragbuttonpressed&lt;br /&gt;
|0x82b2&lt;br /&gt;
|0x80ce&lt;br /&gt;
|-&lt;br /&gt;
|secondaryoffhandbuttonpressed&lt;br /&gt;
|0x82b3&lt;br /&gt;
|0x80cf&lt;br /&gt;
|-&lt;br /&gt;
|getcurrentweaponclipammo&lt;br /&gt;
|0x82b4&lt;br /&gt;
|0x80d0&lt;br /&gt;
|-&lt;br /&gt;
|setvelocity&lt;br /&gt;
|0x82b5&lt;br /&gt;
|0x80d1&lt;br /&gt;
|-&lt;br /&gt;
|getplayerviewheight&lt;br /&gt;
|0x82b6&lt;br /&gt;
|0x80d2&lt;br /&gt;
|-&lt;br /&gt;
|unknown&lt;br /&gt;
|0x8309&lt;br /&gt;
|0x8309&lt;br /&gt;
|-&lt;br /&gt;
|getnormalizedmovement&lt;br /&gt;
|0x82b7&lt;br /&gt;
|0x80d3&lt;br /&gt;
|-&lt;br /&gt;
|getnormalizedcameramovement&lt;br /&gt;
|0x82ce&lt;br /&gt;
|0x80d4&lt;br /&gt;
|-&lt;br /&gt;
|giveweapon&lt;br /&gt;
|0x82cf&lt;br /&gt;
|0x80d5&lt;br /&gt;
|-&lt;br /&gt;
|takeweapon&lt;br /&gt;
|0x82d0&lt;br /&gt;
|0x80d6&lt;br /&gt;
|-&lt;br /&gt;
|takeallweapons&lt;br /&gt;
|0x82d1&lt;br /&gt;
|0x80d7&lt;br /&gt;
|-&lt;br /&gt;
|getcurrentweapon&lt;br /&gt;
|0x82d2&lt;br /&gt;
|0x80d8&lt;br /&gt;
|-&lt;br /&gt;
|getcurrentprimaryweapon&lt;br /&gt;
|0x82d3&lt;br /&gt;
|0x80d9&lt;br /&gt;
|-&lt;br /&gt;
|getcurrentoffhand&lt;br /&gt;
|0x82d4&lt;br /&gt;
|0x80da&lt;br /&gt;
|-&lt;br /&gt;
|hasweapon&lt;br /&gt;
|0x82d5&lt;br /&gt;
|0x80db&lt;br /&gt;
|-&lt;br /&gt;
|switchtoweapon&lt;br /&gt;
|0x82d6&lt;br /&gt;
|0x80dc&lt;br /&gt;
|-&lt;br /&gt;
|switchtoweaponimmediate&lt;br /&gt;
|0x82d7&lt;br /&gt;
|0x80dd&lt;br /&gt;
|-&lt;br /&gt;
|switchtooffhand&lt;br /&gt;
|0x82d8&lt;br /&gt;
|0x80de&lt;br /&gt;
|-&lt;br /&gt;
|givestartammo&lt;br /&gt;
|0x82f2&lt;br /&gt;
|0x80df&lt;br /&gt;
|-&lt;br /&gt;
|givemaxammo&lt;br /&gt;
|0x82f3&lt;br /&gt;
|0x80e0&lt;br /&gt;
|-&lt;br /&gt;
|getfractionstartammo&lt;br /&gt;
|0x82f4&lt;br /&gt;
|0x80e1&lt;br /&gt;
|-&lt;br /&gt;
|getfractionmaxammo&lt;br /&gt;
|0x82f5&lt;br /&gt;
|0x80e2&lt;br /&gt;
|-&lt;br /&gt;
|isdualwielding&lt;br /&gt;
|0x82f6&lt;br /&gt;
|0x80e3&lt;br /&gt;
|-&lt;br /&gt;
|isreloading&lt;br /&gt;
|0x82f7&lt;br /&gt;
|0x80e4&lt;br /&gt;
|-&lt;br /&gt;
|isswitchingweapon&lt;br /&gt;
|0x82f8&lt;br /&gt;
|0x80e5&lt;br /&gt;
|-&lt;br /&gt;
|setorigin&lt;br /&gt;
|0x82f9&lt;br /&gt;
|0x80e6&lt;br /&gt;
|-&lt;br /&gt;
|getvelocity&lt;br /&gt;
|0x82fa&lt;br /&gt;
|0x80e7&lt;br /&gt;
|-&lt;br /&gt;
|setplayerangles&lt;br /&gt;
|0x82fb&lt;br /&gt;
|0x80e8&lt;br /&gt;
|-&lt;br /&gt;
|getplayerangles&lt;br /&gt;
|0x82fc&lt;br /&gt;
|0x80e9&lt;br /&gt;
|-&lt;br /&gt;
|usebuttonpressed&lt;br /&gt;
|0x82fd&lt;br /&gt;
|0x80ea&lt;br /&gt;
|-&lt;br /&gt;
|attackbuttonpressed&lt;br /&gt;
|0x82fe&lt;br /&gt;
|0x80eb&lt;br /&gt;
|-&lt;br /&gt;
|adsbuttonpressed&lt;br /&gt;
|0x82ff&lt;br /&gt;
|0x80ec&lt;br /&gt;
|-&lt;br /&gt;
|meleebuttonpressed&lt;br /&gt;
|0x8300&lt;br /&gt;
|0x80ed&lt;br /&gt;
|-&lt;br /&gt;
|playerads&lt;br /&gt;
|0x8301&lt;br /&gt;
|0x80ee&lt;br /&gt;
|-&lt;br /&gt;
|isonground&lt;br /&gt;
|0x8302&lt;br /&gt;
|0x80ef&lt;br /&gt;
|-&lt;br /&gt;
|isusingturret&lt;br /&gt;
|0x8303&lt;br /&gt;
|0x80f0&lt;br /&gt;
|-&lt;br /&gt;
|setviewmodel&lt;br /&gt;
|0x8304&lt;br /&gt;
|0x80f1&lt;br /&gt;
|-&lt;br /&gt;
|setoffhandprimaryclass&lt;br /&gt;
|0x8305&lt;br /&gt;
|0x80f2&lt;br /&gt;
|-&lt;br /&gt;
|getoffhandprimaryclass&lt;br /&gt;
|0x8306&lt;br /&gt;
|0x80f3&lt;br /&gt;
|-&lt;br /&gt;
|setoffhandsecondaryclass&lt;br /&gt;
|0x82d9&lt;br /&gt;
|0x80f4&lt;br /&gt;
|-&lt;br /&gt;
|getoffhandsecondaryclass&lt;br /&gt;
|0x82da&lt;br /&gt;
|0x80f5&lt;br /&gt;
|-&lt;br /&gt;
|beginlocationselection&lt;br /&gt;
|0x82db&lt;br /&gt;
|0x80f6&lt;br /&gt;
|-&lt;br /&gt;
|endlocationselection&lt;br /&gt;
|0x82dc&lt;br /&gt;
|0x80f7&lt;br /&gt;
|-&lt;br /&gt;
|disableweapons&lt;br /&gt;
|0x82dd&lt;br /&gt;
|0x80f8&lt;br /&gt;
|-&lt;br /&gt;
|enableweapons&lt;br /&gt;
|0x82de&lt;br /&gt;
|0x80f9&lt;br /&gt;
|-&lt;br /&gt;
|disableoffhandweapons&lt;br /&gt;
|0x82df&lt;br /&gt;
|0x80fa&lt;br /&gt;
|-&lt;br /&gt;
|enableoffhandweapons&lt;br /&gt;
|0x82e0&lt;br /&gt;
|0x80fb&lt;br /&gt;
|-&lt;br /&gt;
|disableweaponswitch&lt;br /&gt;
|0x82e1&lt;br /&gt;
|0x80fc&lt;br /&gt;
|-&lt;br /&gt;
|enableweaponswitch&lt;br /&gt;
|0x82e2&lt;br /&gt;
|0x80fd&lt;br /&gt;
|-&lt;br /&gt;
|openpopupmenu&lt;br /&gt;
|0x82e3&lt;br /&gt;
|0x80fe&lt;br /&gt;
|-&lt;br /&gt;
|openpopupmenunomouse&lt;br /&gt;
|0x82e4&lt;br /&gt;
|0x80ff&lt;br /&gt;
|-&lt;br /&gt;
|closepopupmenu&lt;br /&gt;
|0x82e5&lt;br /&gt;
|0x8100&lt;br /&gt;
|-&lt;br /&gt;
|openmenu&lt;br /&gt;
|0x82e6&lt;br /&gt;
|0x8101&lt;br /&gt;
|-&lt;br /&gt;
|closemenu&lt;br /&gt;
|0x82e7&lt;br /&gt;
|0x8102&lt;br /&gt;
|-&lt;br /&gt;
|freezecontrols&lt;br /&gt;
|0x82e9&lt;br /&gt;
|0x8104&lt;br /&gt;
|-&lt;br /&gt;
|disableusability&lt;br /&gt;
|0x82ea&lt;br /&gt;
|0x8105&lt;br /&gt;
|-&lt;br /&gt;
|enableusability&lt;br /&gt;
|0x82eb&lt;br /&gt;
|0x8106&lt;br /&gt;
|-&lt;br /&gt;
|setwhizbyspreads&lt;br /&gt;
|0x82ec&lt;br /&gt;
|0x8107&lt;br /&gt;
|-&lt;br /&gt;
|setwhizbyradii&lt;br /&gt;
|0x82ed&lt;br /&gt;
|0x8108&lt;br /&gt;
|-&lt;br /&gt;
|setreverb&lt;br /&gt;
|0x82ee&lt;br /&gt;
|0x8109&lt;br /&gt;
|-&lt;br /&gt;
|deactivatereverb&lt;br /&gt;
|0x82ef&lt;br /&gt;
|0x810a&lt;br /&gt;
|-&lt;br /&gt;
|setvolmod&lt;br /&gt;
|0x82f0&lt;br /&gt;
|0x810b&lt;br /&gt;
|-&lt;br /&gt;
|setchannelvolume&lt;br /&gt;
|0x82f1&lt;br /&gt;
|0x810c&lt;br /&gt;
|-&lt;br /&gt;
|setchannelvolumes&lt;br /&gt;
|0x82b8&lt;br /&gt;
|0x810d&lt;br /&gt;
|-&lt;br /&gt;
|deactivatechannelvolumes&lt;br /&gt;
|0x82b9&lt;br /&gt;
|0x810e&lt;br /&gt;
|-&lt;br /&gt;
|playlocalsound&lt;br /&gt;
|0x82ba&lt;br /&gt;
|0x810f&lt;br /&gt;
|-&lt;br /&gt;
|stoplocalsound&lt;br /&gt;
|0x82bb&lt;br /&gt;
|0x8110&lt;br /&gt;
|-&lt;br /&gt;
|setweaponammoclip&lt;br /&gt;
|0x82bc&lt;br /&gt;
|0x8111&lt;br /&gt;
|-&lt;br /&gt;
|setweaponammostock&lt;br /&gt;
|0x82bd&lt;br /&gt;
|0x8112&lt;br /&gt;
|-&lt;br /&gt;
|getweaponammoclip&lt;br /&gt;
|0x82be&lt;br /&gt;
|0x8113&lt;br /&gt;
|-&lt;br /&gt;
|getweaponammostock&lt;br /&gt;
|0x82bf&lt;br /&gt;
|0x8114&lt;br /&gt;
|-&lt;br /&gt;
|anyammoforweaponmodes&lt;br /&gt;
|0x82c0&lt;br /&gt;
|0x8115&lt;br /&gt;
|-&lt;br /&gt;
|setclientdvar&lt;br /&gt;
|0x82c1&lt;br /&gt;
|0x8116&lt;br /&gt;
|-&lt;br /&gt;
|setclientdvars&lt;br /&gt;
|0x82c2&lt;br /&gt;
|0x8117&lt;br /&gt;
|-&lt;br /&gt;
|allowads&lt;br /&gt;
|0x82c3&lt;br /&gt;
|0x8118&lt;br /&gt;
|-&lt;br /&gt;
|allowjump&lt;br /&gt;
|0x82c4&lt;br /&gt;
|0x8119&lt;br /&gt;
|-&lt;br /&gt;
|allowsprint&lt;br /&gt;
|0x82c5&lt;br /&gt;
|0x811a&lt;br /&gt;
|-&lt;br /&gt;
|setspreadoverride&lt;br /&gt;
|0x82c6&lt;br /&gt;
|0x811b&lt;br /&gt;
|-&lt;br /&gt;
|resetspreadoverride&lt;br /&gt;
|0x82c7&lt;br /&gt;
|0x811c&lt;br /&gt;
|-&lt;br /&gt;
|setaimspreadmovementscale&lt;br /&gt;
|0x82c8&lt;br /&gt;
|0x811d&lt;br /&gt;
|-&lt;br /&gt;
|setactionslot&lt;br /&gt;
|0x82c9&lt;br /&gt;
|0x811e&lt;br /&gt;
|-&lt;br /&gt;
|setviewkickscale&lt;br /&gt;
|0x82ca&lt;br /&gt;
|0x811f&lt;br /&gt;
|-&lt;br /&gt;
|getviewkickscale&lt;br /&gt;
|0x82cb&lt;br /&gt;
|0x8120&lt;br /&gt;
|-&lt;br /&gt;
|getweaponslistall&lt;br /&gt;
|0x82cc&lt;br /&gt;
|0x8121&lt;br /&gt;
|-&lt;br /&gt;
|getweaponslistprimaries&lt;br /&gt;
|0x82cd&lt;br /&gt;
|0x8122&lt;br /&gt;
|-&lt;br /&gt;
|getweaponslistoffhands&lt;br /&gt;
|0x8296&lt;br /&gt;
|0x8123&lt;br /&gt;
|-&lt;br /&gt;
|getweaponslistitems&lt;br /&gt;
|0x8297&lt;br /&gt;
|0x8124&lt;br /&gt;
|-&lt;br /&gt;
|getweaponslistexclusives&lt;br /&gt;
|0x8298&lt;br /&gt;
|0x8125&lt;br /&gt;
|-&lt;br /&gt;
|getweaponslist&lt;br /&gt;
|0x8299&lt;br /&gt;
|0x8126&lt;br /&gt;
|-&lt;br /&gt;
|canplayerplacesentry&lt;br /&gt;
|0x829a&lt;br /&gt;
|0x8127&lt;br /&gt;
|-&lt;br /&gt;
|canplayerplacetank&lt;br /&gt;
|0x829b&lt;br /&gt;
|0x8128&lt;br /&gt;
|-&lt;br /&gt;
|visionsetnakedforplayer&lt;br /&gt;
|0x829c&lt;br /&gt;
|0x8129&lt;br /&gt;
|-&lt;br /&gt;
|visionsetnightforplayer&lt;br /&gt;
|0x829d&lt;br /&gt;
|0x812a&lt;br /&gt;
|-&lt;br /&gt;
|visionsetmissilecamforplayer&lt;br /&gt;
|0x829e&lt;br /&gt;
|0x812b&lt;br /&gt;
|-&lt;br /&gt;
|visionsetthermalforplayer&lt;br /&gt;
|0x829f&lt;br /&gt;
|0x812c&lt;br /&gt;
|-&lt;br /&gt;
|visionsetpainforplayer&lt;br /&gt;
|0x82a0&lt;br /&gt;
|0x812d&lt;br /&gt;
|-&lt;br /&gt;
|setblurforplayer&lt;br /&gt;
|0x82a1&lt;br /&gt;
|0x812e&lt;br /&gt;
|-&lt;br /&gt;
|getplayerweaponmodel&lt;br /&gt;
|0x82a2&lt;br /&gt;
|0x812f&lt;br /&gt;
|-&lt;br /&gt;
|getplayerknifemodel&lt;br /&gt;
|0x82a3&lt;br /&gt;
|0x8130&lt;br /&gt;
|-&lt;br /&gt;
|updateplayermodelwithweapons&lt;br /&gt;
|0x82a4&lt;br /&gt;
|0x8131&lt;br /&gt;
|-&lt;br /&gt;
|notifyonplayercommand&lt;br /&gt;
|0x82a5&lt;br /&gt;
|0x8132&lt;br /&gt;
|-&lt;br /&gt;
|canmantle&lt;br /&gt;
|0x82a6&lt;br /&gt;
|0x8133&lt;br /&gt;
|-&lt;br /&gt;
|forcemantle&lt;br /&gt;
|0x82a7&lt;br /&gt;
|0x8134&lt;br /&gt;
|-&lt;br /&gt;
|ismantling&lt;br /&gt;
|0x82a8&lt;br /&gt;
|0x8135&lt;br /&gt;
|-&lt;br /&gt;
|playfx&lt;br /&gt;
|0x82a9&lt;br /&gt;
|0x8136&lt;br /&gt;
|-&lt;br /&gt;
|recoilscaleon&lt;br /&gt;
|0x82aa&lt;br /&gt;
|0x8137&lt;br /&gt;
|-&lt;br /&gt;
|recoilscaleoff&lt;br /&gt;
|0x82ab&lt;br /&gt;
|0x8138&lt;br /&gt;
|-&lt;br /&gt;
|weaponlockstart&lt;br /&gt;
|0x82ac&lt;br /&gt;
|0x8139&lt;br /&gt;
|-&lt;br /&gt;
|weaponlockfinalize&lt;br /&gt;
|0x82ad&lt;br /&gt;
|0x813a&lt;br /&gt;
|-&lt;br /&gt;
|weaponlockfree&lt;br /&gt;
|0x82ae&lt;br /&gt;
|0x813b&lt;br /&gt;
|-&lt;br /&gt;
|weaponlocktargettooclose&lt;br /&gt;
|0x82af&lt;br /&gt;
|0x813c&lt;br /&gt;
|-&lt;br /&gt;
|weaponlocknoclearance&lt;br /&gt;
|0x826e&lt;br /&gt;
|0x813d&lt;br /&gt;
|-&lt;br /&gt;
|visionsyncwithplayer&lt;br /&gt;
|0x826f&lt;br /&gt;
|0x813e&lt;br /&gt;
|-&lt;br /&gt;
|showhudsplash&lt;br /&gt;
|0x8270&lt;br /&gt;
|0x813f&lt;br /&gt;
|-&lt;br /&gt;
|setperk&lt;br /&gt;
|0x8271&lt;br /&gt;
|0x8140&lt;br /&gt;
|-&lt;br /&gt;
|hasperk&lt;br /&gt;
|0x8272&lt;br /&gt;
|0x8141&lt;br /&gt;
|-&lt;br /&gt;
|clearperks&lt;br /&gt;
|0x8273&lt;br /&gt;
|0x8142&lt;br /&gt;
|-&lt;br /&gt;
|unsetperk&lt;br /&gt;
|0x8274&lt;br /&gt;
|0x8143&lt;br /&gt;
|-&lt;br /&gt;
|noclip&lt;br /&gt;
|0x8275&lt;br /&gt;
|0x8144&lt;br /&gt;
|-&lt;br /&gt;
|ufo&lt;br /&gt;
|0x8276&lt;br /&gt;
|0x8145&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- script ent --&amp;gt;&lt;br /&gt;
|moveto&lt;br /&gt;
|0x8277&lt;br /&gt;
|0x8146&lt;br /&gt;
|-&lt;br /&gt;
|movex&lt;br /&gt;
|0x8278&lt;br /&gt;
|0x8147&lt;br /&gt;
|-&lt;br /&gt;
|movey&lt;br /&gt;
|0x8279&lt;br /&gt;
|0x8148&lt;br /&gt;
|-&lt;br /&gt;
|movez&lt;br /&gt;
|0x827A&lt;br /&gt;
|0x8149&lt;br /&gt;
|-&lt;br /&gt;
|movegravity&lt;br /&gt;
|0x827B&lt;br /&gt;
|0x814A&lt;br /&gt;
|-&lt;br /&gt;
|moveslide&lt;br /&gt;
|0x827C&lt;br /&gt;
|0x814B&lt;br /&gt;
|-&lt;br /&gt;
|stopmoveslide&lt;br /&gt;
|0x827D&lt;br /&gt;
|0x814C&lt;br /&gt;
|-&lt;br /&gt;
|rotateto&lt;br /&gt;
|0x827E&lt;br /&gt;
|0x814D&lt;br /&gt;
|-&lt;br /&gt;
|rotatepitch&lt;br /&gt;
|0x827F&lt;br /&gt;
|0x814E&lt;br /&gt;
|-&lt;br /&gt;
|rotateyaw&lt;br /&gt;
|0x8280&lt;br /&gt;
|0x814F&lt;br /&gt;
|-&lt;br /&gt;
|rotateroll&lt;br /&gt;
|0x8281&lt;br /&gt;
|0x8150&lt;br /&gt;
|-&lt;br /&gt;
|addpitch&lt;br /&gt;
|0x8282&lt;br /&gt;
|0x8151&lt;br /&gt;
|-&lt;br /&gt;
|addyaw&lt;br /&gt;
|0x8283&lt;br /&gt;
|0x8152&lt;br /&gt;
|-&lt;br /&gt;
|addroll&lt;br /&gt;
|0x8284&lt;br /&gt;
|0x8153&lt;br /&gt;
|-&lt;br /&gt;
|vibrate&lt;br /&gt;
|0x8285&lt;br /&gt;
|0x8154&lt;br /&gt;
|-&lt;br /&gt;
|rotatevelocity&lt;br /&gt;
|0x8286&lt;br /&gt;
|0x8155&lt;br /&gt;
|-&lt;br /&gt;
|solid&lt;br /&gt;
|0x8287&lt;br /&gt;
|0x8156&lt;br /&gt;
|-&lt;br /&gt;
|notsolid&lt;br /&gt;
|0x8288&lt;br /&gt;
|0x8157&lt;br /&gt;
|-&lt;br /&gt;
|setcandamage&lt;br /&gt;
|0x8289&lt;br /&gt;
|0x8158&lt;br /&gt;
|-&lt;br /&gt;
|setcanradiusdamage&lt;br /&gt;
|0x828A&lt;br /&gt;
|0x8159&lt;br /&gt;
|-&lt;br /&gt;
|physicslaunchclient&lt;br /&gt;
|0x828B&lt;br /&gt;
|0x815A&lt;br /&gt;
|-&lt;br /&gt;
|physicslaunchserver&lt;br /&gt;
|0x8247&lt;br /&gt;
|0x815B&lt;br /&gt;
|-&lt;br /&gt;
|physicslaunchserveritem&lt;br /&gt;
|0x8248&lt;br /&gt;
|0x815C&lt;br /&gt;
|-&lt;br /&gt;
|clonebrushmodeltoscriptmodel&lt;br /&gt;
|0x8249&lt;br /&gt;
|0x815D&lt;br /&gt;
|-&lt;br /&gt;
|scriptmodelplayanim&lt;br /&gt;
|0x824A&lt;br /&gt;
|0x815E&lt;br /&gt;
|-&lt;br /&gt;
|scriptmodelclearanim&lt;br /&gt;
|0x824B&lt;br /&gt;
|0x815F&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- vehicle --&amp;gt;&lt;br /&gt;
|vehicle_teleport&lt;br /&gt;
|0x824C&lt;br /&gt;
|0x8160&lt;br /&gt;
|-&lt;br /&gt;
|attachpath&lt;br /&gt;
|0x824D&lt;br /&gt;
|0x8161&lt;br /&gt;
|-&lt;br /&gt;
|getattachpos&lt;br /&gt;
|0x824E&lt;br /&gt;
|0x8162&lt;br /&gt;
|-&lt;br /&gt;
|startpath&lt;br /&gt;
|0x824F&lt;br /&gt;
|0x8163&lt;br /&gt;
|-&lt;br /&gt;
|setswitchnode&lt;br /&gt;
|0x8250&lt;br /&gt;
|0x8164&lt;br /&gt;
|-&lt;br /&gt;
|setwaitspeed&lt;br /&gt;
|0x8251&lt;br /&gt;
|0x8165&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_finishdamage&lt;br /&gt;
|0x8252&lt;br /&gt;
|0x8166&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_setspeed&lt;br /&gt;
|0x8253&lt;br /&gt;
|0x8167&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_setspeedimmediate&lt;br /&gt;
|0x8254&lt;br /&gt;
|0x8168&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_rotateyaw&lt;br /&gt;
|0x8255&lt;br /&gt;
|0x8169&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_getspeed&lt;br /&gt;
|0x8256&lt;br /&gt;
|0x816a&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_getvelocity&lt;br /&gt;
|0x8257&lt;br /&gt;
|0x816b&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_getbodyvelocity&lt;br /&gt;
|0x8258&lt;br /&gt;
|0x816c&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_getsteering&lt;br /&gt;
|0x8259&lt;br /&gt;
|0x816d&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_getthrottle&lt;br /&gt;
|0x825A&lt;br /&gt;
|0x816e&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_turnengineoff&lt;br /&gt;
|0x825B&lt;br /&gt;
|0x816f&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_turnengineon&lt;br /&gt;
|0x825C&lt;br /&gt;
|0x8170&lt;br /&gt;
|-&lt;br /&gt;
|getgoalspeedmph&lt;br /&gt;
|0x825D&lt;br /&gt;
|0x8171&lt;br /&gt;
|-&lt;br /&gt;
|setacceleration&lt;br /&gt;
|0x825E&lt;br /&gt;
|0x8172&lt;br /&gt;
|-&lt;br /&gt;
|setdeceleration&lt;br /&gt;
|0x825F&lt;br /&gt;
|0x8173&lt;br /&gt;
|-&lt;br /&gt;
|resumespeed&lt;br /&gt;
|0x8260&lt;br /&gt;
|0x8174&lt;br /&gt;
|-&lt;br /&gt;
|setyawspeed&lt;br /&gt;
|0x8261&lt;br /&gt;
|0x8175&lt;br /&gt;
|-&lt;br /&gt;
|setyawspeedbyname&lt;br /&gt;
|0x8262&lt;br /&gt;
|0x8176&lt;br /&gt;
|-&lt;br /&gt;
|setmaxpitchroll&lt;br /&gt;
|0x8263&lt;br /&gt;
|0x8177&lt;br /&gt;
|-&lt;br /&gt;
|setairresistance&lt;br /&gt;
|0x8264&lt;br /&gt;
|0x8178&lt;br /&gt;
|-&lt;br /&gt;
|setturningability&lt;br /&gt;
|0x8265&lt;br /&gt;
|0x8179&lt;br /&gt;
|-&lt;br /&gt;
|setjitterparams&lt;br /&gt;
|0x8224&lt;br /&gt;
|0x817a&lt;br /&gt;
|-&lt;br /&gt;
|sethoverparams&lt;br /&gt;
|0x8225&lt;br /&gt;
|0x817b&lt;br /&gt;
|-&lt;br /&gt;
|joltbody&lt;br /&gt;
|0x8226&lt;br /&gt;
|0x817c&lt;br /&gt;
|-&lt;br /&gt;
|freevehicle&lt;br /&gt;
|0x8227&lt;br /&gt;
|0x817d&lt;br /&gt;
|-&lt;br /&gt;
|getwheelsurface&lt;br /&gt;
|0x8228&lt;br /&gt;
|0x817e&lt;br /&gt;
|-&lt;br /&gt;
|getvehicleowner&lt;br /&gt;
|0x8229&lt;br /&gt;
|0x817f&lt;br /&gt;
|-&lt;br /&gt;
|setvehiclelookattext&lt;br /&gt;
|0x822A&lt;br /&gt;
|0x8180&lt;br /&gt;
|-&lt;br /&gt;
|setvehicleteam&lt;br /&gt;
|0x822B&lt;br /&gt;
|0x8181&lt;br /&gt;
|-&lt;br /&gt;
|setneargoalnotifydist&lt;br /&gt;
|0x822C&lt;br /&gt;
|0x8182&lt;br /&gt;
|-&lt;br /&gt;
|setvehgoalpos&lt;br /&gt;
|0x822D&lt;br /&gt;
|0x8183&lt;br /&gt;
|-&lt;br /&gt;
|setgoalyaw&lt;br /&gt;
|0x822E&lt;br /&gt;
|0x8184&lt;br /&gt;
|-&lt;br /&gt;
|cleargoalyaw&lt;br /&gt;
|0x822F&lt;br /&gt;
|0x8185&lt;br /&gt;
|-&lt;br /&gt;
|settargetyaw&lt;br /&gt;
|0x8230&lt;br /&gt;
|0x8186&lt;br /&gt;
|-&lt;br /&gt;
|cleartargetyaw&lt;br /&gt;
|0x8231&lt;br /&gt;
|0x8187&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_helisetai&lt;br /&gt;
|0x8232&lt;br /&gt;
|0x8188&lt;br /&gt;
|-&lt;br /&gt;
|setturrettargetvec&lt;br /&gt;
|0x8233&lt;br /&gt;
|0x8189&lt;br /&gt;
|-&lt;br /&gt;
|setturrettargetent&lt;br /&gt;
|0x8234&lt;br /&gt;
|0x818a&lt;br /&gt;
|-&lt;br /&gt;
|clearturrettarget&lt;br /&gt;
|0x8235&lt;br /&gt;
|0x818b&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_canturrettargetpoint&lt;br /&gt;
|0x8236&lt;br /&gt;
|0x818c&lt;br /&gt;
|-&lt;br /&gt;
|setlookatent&lt;br /&gt;
|0x8237&lt;br /&gt;
|0x818d&lt;br /&gt;
|-&lt;br /&gt;
|clearlookatent&lt;br /&gt;
|0x8238&lt;br /&gt;
|0x818e&lt;br /&gt;
|-&lt;br /&gt;
|setvehweapon&lt;br /&gt;
|0x8239&lt;br /&gt;
|0x818f&lt;br /&gt;
|-&lt;br /&gt;
|fireweapon&lt;br /&gt;
|0x823A&lt;br /&gt;
|0x8190&lt;br /&gt;
|-&lt;br /&gt;
|vehicleturretcontrolon&lt;br /&gt;
|0x823B&lt;br /&gt;
|0x8191&lt;br /&gt;
|-&lt;br /&gt;
|vehicleturretcontroloff&lt;br /&gt;
|0x8200&lt;br /&gt;
|0x8192&lt;br /&gt;
|-&lt;br /&gt;
|isturretready&lt;br /&gt;
|0x8201&lt;br /&gt;
|0x8193&lt;br /&gt;
|-&lt;br /&gt;
|vehicledriveto&lt;br /&gt;
|0x8202&lt;br /&gt;
|0x8194&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_dospawn&lt;br /&gt;
|0x8203&lt;br /&gt;
|0x8195&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_isphysveh&lt;br /&gt;
|0x8204&lt;br /&gt;
|0x8196&lt;br /&gt;
|-&lt;br /&gt;
|vehphys_crash&lt;br /&gt;
|0x8205&lt;br /&gt;
|0x8197&lt;br /&gt;
|-&lt;br /&gt;
|vehphys_launch&lt;br /&gt;
|0x8206&lt;br /&gt;
|0x8198&lt;br /&gt;
|-&lt;br /&gt;
|vehphys_disablecrashing&lt;br /&gt;
|0x8207&lt;br /&gt;
|0x8199&lt;br /&gt;
|-&lt;br /&gt;
|vehphys_enablecrashing&lt;br /&gt;
|0x8208&lt;br /&gt;
|0x819a&lt;br /&gt;
|-&lt;br /&gt;
|vehphys_setspeed&lt;br /&gt;
|0x8209&lt;br /&gt;
|0x819b&lt;br /&gt;
|-&lt;br /&gt;
|vehphys_setconveyorbelt&lt;br /&gt;
|0x820A&lt;br /&gt;
|0x819c&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- helicopter --&amp;gt;&lt;br /&gt;
|freehelicopter&lt;br /&gt;
|0x820B&lt;br /&gt;
|0x819D&lt;br /&gt;
|-&lt;br /&gt;
|setdamagestage&lt;br /&gt;
|0x8002&lt;br /&gt;
|0x82F2&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- hud element --&amp;gt;&lt;br /&gt;
|settext&lt;br /&gt;
|0x80b6&lt;br /&gt;
|0x827d&lt;br /&gt;
|-&lt;br /&gt;
|clearalltextafterhudelem&lt;br /&gt;
|0x80b7&lt;br /&gt;
|0x827e&lt;br /&gt;
|-&lt;br /&gt;
|setshader&lt;br /&gt;
|0x80b8&lt;br /&gt;
|0x827f&lt;br /&gt;
|-&lt;br /&gt;
|settargetent&lt;br /&gt;
|0x80b9&lt;br /&gt;
|0x8280&lt;br /&gt;
|-&lt;br /&gt;
|cleartargetent&lt;br /&gt;
|0x80ba&lt;br /&gt;
|0x8281&lt;br /&gt;
|-&lt;br /&gt;
|settimer&lt;br /&gt;
|0x80bb&lt;br /&gt;
|0x8282&lt;br /&gt;
|-&lt;br /&gt;
|settimerup&lt;br /&gt;
|0x80bc&lt;br /&gt;
|0x8283&lt;br /&gt;
|-&lt;br /&gt;
|settimerstatic&lt;br /&gt;
|0x80bd&lt;br /&gt;
|0x8284&lt;br /&gt;
|-&lt;br /&gt;
|settenthstimer&lt;br /&gt;
|0x80be&lt;br /&gt;
|0x8285&lt;br /&gt;
|-&lt;br /&gt;
|settenthstimerup&lt;br /&gt;
|0x80bf&lt;br /&gt;
|0x8286&lt;br /&gt;
|-&lt;br /&gt;
|settenthstimerstatic&lt;br /&gt;
|0x80c0&lt;br /&gt;
|0x8287&lt;br /&gt;
|-&lt;br /&gt;
|setclock&lt;br /&gt;
|0x80c1&lt;br /&gt;
|0x8288&lt;br /&gt;
|-&lt;br /&gt;
|setclockup&lt;br /&gt;
|0x80c2&lt;br /&gt;
|0x8289&lt;br /&gt;
|-&lt;br /&gt;
|setvalue&lt;br /&gt;
|0x80c3&lt;br /&gt;
|0x828a&lt;br /&gt;
|-&lt;br /&gt;
|setwaypoint&lt;br /&gt;
|0x80c4&lt;br /&gt;
|0x828b&lt;br /&gt;
|-&lt;br /&gt;
|rotatingicon&lt;br /&gt;
|0x80c5&lt;br /&gt;
|0x828c&lt;br /&gt;
|-&lt;br /&gt;
|secondaryarrow&lt;br /&gt;
|0x807b&lt;br /&gt;
|0x828d&lt;br /&gt;
|-&lt;br /&gt;
|setwaypointiconoffscreenonly&lt;br /&gt;
|0x807c&lt;br /&gt;
|0x828e&lt;br /&gt;
|-&lt;br /&gt;
|fadeovertime&lt;br /&gt;
|0x807d&lt;br /&gt;
|0x828f&lt;br /&gt;
|-&lt;br /&gt;
|scaleovertime&lt;br /&gt;
|0x807e&lt;br /&gt;
|0x8290&lt;br /&gt;
|-&lt;br /&gt;
|moveovertime&lt;br /&gt;
|0x807f&lt;br /&gt;
|0x8291&lt;br /&gt;
|-&lt;br /&gt;
|reset&lt;br /&gt;
|0x8080&lt;br /&gt;
|0x8292&lt;br /&gt;
|-&lt;br /&gt;
|destroy&lt;br /&gt;
|0x8081&lt;br /&gt;
|0x8293&lt;br /&gt;
|-&lt;br /&gt;
|setpulsefx&lt;br /&gt;
|0x8082&lt;br /&gt;
|0x8294&lt;br /&gt;
|-&lt;br /&gt;
|setplayernamestring&lt;br /&gt;
|0x8083&lt;br /&gt;
|0x8295&lt;br /&gt;
|-&lt;br /&gt;
|changefontscaleovertime&lt;br /&gt;
|N/A&lt;br /&gt;
|0x8296&lt;br /&gt;
|-&lt;br /&gt;
|fadeovertime2&lt;br /&gt;
|0x830b&lt;br /&gt;
|N/A&lt;br /&gt;
|-&lt;br /&gt;
|scaleovertime2&lt;br /&gt;
|0x830c&lt;br /&gt;
|N/A&lt;br /&gt;
|-&lt;br /&gt;
|moveovertime2&lt;br /&gt;
|0x8084&lt;br /&gt;
|N/A&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- client? --&amp;gt;&lt;br /&gt;
|getorigin&lt;br /&gt;
|0x808E&lt;br /&gt;
|0x82a0&lt;br /&gt;
|-&lt;br /&gt;
|useby&lt;br /&gt;
|0x8092&lt;br /&gt;
|0x82a4&lt;br /&gt;
|-&lt;br /&gt;
|playsound&lt;br /&gt;
|0x8093&lt;br /&gt;
|0x82a5&lt;br /&gt;
|-&lt;br /&gt;
|playsoundasmaster&lt;br /&gt;
|0x806E&lt;br /&gt;
|0x82af&lt;br /&gt;
|-&lt;br /&gt;
|playsoundtoteam&lt;br /&gt;
|0x8003&lt;br /&gt;
|0x82f3&lt;br /&gt;
|-&lt;br /&gt;
|playsoundtoplayer&lt;br /&gt;
|0x8004&lt;br /&gt;
|0x82f4&lt;br /&gt;
|-&lt;br /&gt;
|playloopsound&lt;br /&gt;
|0x806F&lt;br /&gt;
|0x82b0&lt;br /&gt;
|-&lt;br /&gt;
|getnormalhealth&lt;br /&gt;
|0x8074&lt;br /&gt;
|0x82b5&lt;br /&gt;
|-&lt;br /&gt;
|setnormalhealth&lt;br /&gt;
|0x804C&lt;br /&gt;
|0x82b6&lt;br /&gt;
|-&lt;br /&gt;
|show&lt;br /&gt;
|0x804F&lt;br /&gt;
|0x82b9&lt;br /&gt;
|-&lt;br /&gt;
|hide&lt;br /&gt;
|0x8050&lt;br /&gt;
|0x82ba&lt;br /&gt;
|-&lt;br /&gt;
|playerhide&lt;br /&gt;
|0x8005&lt;br /&gt;
|0x82f5&lt;br /&gt;
|-&lt;br /&gt;
|showtoplayer&lt;br /&gt;
|0x8006&lt;br /&gt;
|0x82f6&lt;br /&gt;
|-&lt;br /&gt;
|enableplayeruse&lt;br /&gt;
|0x8007&lt;br /&gt;
|0x82f7&lt;br /&gt;
|-&lt;br /&gt;
|disableplayeruse&lt;br /&gt;
|0x8008&lt;br /&gt;
|0x82f8&lt;br /&gt;
|-&lt;br /&gt;
|unknown&lt;br /&gt;
|0x830A&lt;br /&gt;
|0x830a&lt;br /&gt;
|-&lt;br /&gt;
|makescrambler&lt;br /&gt;
|0x8009&lt;br /&gt;
|0x82f9&lt;br /&gt;
|-&lt;br /&gt;
|makeportableradar&lt;br /&gt;
|0x800A&lt;br /&gt;
|0x82fa&lt;br /&gt;
|-&lt;br /&gt;
|maketrophysystem&lt;br /&gt;
|0x800B&lt;br /&gt;
|0x82fb&lt;br /&gt;
|-&lt;br /&gt;
|setmode&lt;br /&gt;
|0x8060&lt;br /&gt;
|0x82ca&lt;br /&gt;
|-&lt;br /&gt;
|getmode&lt;br /&gt;
|0x8061&lt;br /&gt;
|0x82cb&lt;br /&gt;
|-&lt;br /&gt;
|placespawnpoint&lt;br /&gt;
|0x800C&lt;br /&gt;
|0x82fc&lt;br /&gt;
|-&lt;br /&gt;
|setteamfortrigger&lt;br /&gt;
|0x800D&lt;br /&gt;
|0x82fd&lt;br /&gt;
|-&lt;br /&gt;
|clientclaimtrigger&lt;br /&gt;
|0x800E&lt;br /&gt;
|0x82fe&lt;br /&gt;
|-&lt;br /&gt;
|clientreleasetrigger&lt;br /&gt;
|0x800F&lt;br /&gt;
|0x82ff&lt;br /&gt;
|-&lt;br /&gt;
|releaseclaimedtrigger&lt;br /&gt;
|0x8010&lt;br /&gt;
|0x8300&lt;br /&gt;
|-&lt;br /&gt;
|isusingonlinedataoffline&lt;br /&gt;
|0x8011&lt;br /&gt;
|0x8301&lt;br /&gt;
|-&lt;br /&gt;
|getrestedtime&lt;br /&gt;
|0x8012&lt;br /&gt;
|0x8302&lt;br /&gt;
|-&lt;br /&gt;
|sendleaderboards&lt;br /&gt;
|0x8013&lt;br /&gt;
|0x8303&lt;br /&gt;
|-&lt;br /&gt;
|logstring&lt;br /&gt;
|0x8020&lt;br /&gt;
|0x82ec&lt;br /&gt;
|-&lt;br /&gt;
|isonladder&lt;br /&gt;
|0x8014&lt;br /&gt;
|0x8304&lt;br /&gt;
|-&lt;br /&gt;
|startragdoll&lt;br /&gt;
|0x801E&lt;br /&gt;
|0x82ea&lt;br /&gt;
|-&lt;br /&gt;
|getcorpseanim&lt;br /&gt;
|0x8015&lt;br /&gt;
|0x8305&lt;br /&gt;
|-&lt;br /&gt;
|playerforcedeathanim&lt;br /&gt;
|0x8016&lt;br /&gt;
|0x8306&lt;br /&gt;
|-&lt;br /&gt;
|startac130&lt;br /&gt;
|0x8307&lt;br /&gt;
|0x8307&lt;br /&gt;
|-&lt;br /&gt;
|stopac130&lt;br /&gt;
|0x8308&lt;br /&gt;
|0x8308&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Function List ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!rowspan=&amp;quot;2&amp;quot;|Function&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|MW3&lt;br /&gt;
|-&lt;br /&gt;
!PC ID&lt;br /&gt;
!PS3/XBOX ID&lt;br /&gt;
&amp;lt;!-- funcion list 1 --&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|createprintchannel&lt;br /&gt;
|N/A&lt;br /&gt;
|0x1&lt;br /&gt;
|-&lt;br /&gt;
|setprintchannel&lt;br /&gt;
|0xe&lt;br /&gt;
|0x2&lt;br /&gt;
|-&lt;br /&gt;
|print&lt;br /&gt;
|0xf&lt;br /&gt;
|0x3&lt;br /&gt;
|-&lt;br /&gt;
|println&lt;br /&gt;
|0x10&lt;br /&gt;
|0x4&lt;br /&gt;
|-&lt;br /&gt;
|print3d&lt;br /&gt;
|0x11&lt;br /&gt;
|0x5&lt;br /&gt;
|-&lt;br /&gt;
|line&lt;br /&gt;
|0x12&lt;br /&gt;
|0x6&lt;br /&gt;
|-&lt;br /&gt;
|precacheturret&lt;br /&gt;
|N/A&lt;br /&gt;
|0x7&lt;br /&gt;
|-&lt;br /&gt;
|getweaponarray&lt;br /&gt;
|N/A&lt;br /&gt;
|0x8&lt;br /&gt;
|-&lt;br /&gt;
|spawnturret&lt;br /&gt;
|0x13&lt;br /&gt;
|0x9&lt;br /&gt;
|-&lt;br /&gt;
|canspawnturret&lt;br /&gt;
|0x14&lt;br /&gt;
|0xa&lt;br /&gt;
|-&lt;br /&gt;
|assert&lt;br /&gt;
|0x15&lt;br /&gt;
|0xb&lt;br /&gt;
|-&lt;br /&gt;
|assertex&lt;br /&gt;
|0x26&lt;br /&gt;
|0xc&lt;br /&gt;
|-&lt;br /&gt;
|assertmsg&lt;br /&gt;
|0x27&lt;br /&gt;
|0xd&lt;br /&gt;
|-&lt;br /&gt;
|isdefined&lt;br /&gt;
|0x28&lt;br /&gt;
|0xe&lt;br /&gt;
|-&lt;br /&gt;
|isstring&lt;br /&gt;
|0x29&lt;br /&gt;
|0xf&lt;br /&gt;
|-&lt;br /&gt;
|setdvar&lt;br /&gt;
|0x2a&lt;br /&gt;
|0x10&lt;br /&gt;
|-&lt;br /&gt;
|setdynamicdvar&lt;br /&gt;
|0x2b&lt;br /&gt;
|0x11&lt;br /&gt;
|-&lt;br /&gt;
|setdvarifuninitialized&lt;br /&gt;
|0x2c&lt;br /&gt;
|0x12&lt;br /&gt;
|-&lt;br /&gt;
|setdevdvar&lt;br /&gt;
|0x2d&lt;br /&gt;
|0x13&lt;br /&gt;
|-&lt;br /&gt;
|setdevdvarifuninitialized&lt;br /&gt;
|0x2e&lt;br /&gt;
|0x14&lt;br /&gt;
|-&lt;br /&gt;
|getdvar&lt;br /&gt;
|0x2f&lt;br /&gt;
|0x15&lt;br /&gt;
|-&lt;br /&gt;
|getdvarint&lt;br /&gt;
|0x30&lt;br /&gt;
|0x16&lt;br /&gt;
|-&lt;br /&gt;
|getdvarfloat&lt;br /&gt;
|0x31&lt;br /&gt;
|0x17&lt;br /&gt;
|-&lt;br /&gt;
|getdvarvector&lt;br /&gt;
|0x32&lt;br /&gt;
|0x18&lt;br /&gt;
|-&lt;br /&gt;
|gettime&lt;br /&gt;
|0x33&lt;br /&gt;
|0x19&lt;br /&gt;
|-&lt;br /&gt;
|getentbynum&lt;br /&gt;
|0x34&lt;br /&gt;
|0x1a&lt;br /&gt;
|-&lt;br /&gt;
|getweaponmodel&lt;br /&gt;
|0x35&lt;br /&gt;
|0x1b&lt;br /&gt;
|-&lt;br /&gt;
|getweaponhidetags&lt;br /&gt;
|0x51&lt;br /&gt;
|0x1c&lt;br /&gt;
|-&lt;br /&gt;
|getanimlength&lt;br /&gt;
|0x52&lt;br /&gt;
|0x1d&lt;br /&gt;
|-&lt;br /&gt;
|animhasnotetrack&lt;br /&gt;
|0x53&lt;br /&gt;
|0x1e&lt;br /&gt;
|-&lt;br /&gt;
|getnotetracktimes&lt;br /&gt;
|0x54&lt;br /&gt;
|0x1f&lt;br /&gt;
|-&lt;br /&gt;
|spawn&lt;br /&gt;
|0x55&lt;br /&gt;
|0x20&lt;br /&gt;
|-&lt;br /&gt;
|spawnloopsound&lt;br /&gt;
|0x56&lt;br /&gt;
|0x21&lt;br /&gt;
|-&lt;br /&gt;
|bullettrace&lt;br /&gt;
|0x57&lt;br /&gt;
|0x22&lt;br /&gt;
|-&lt;br /&gt;
|bullettracepassed&lt;br /&gt;
|0x58&lt;br /&gt;
|0x23&lt;br /&gt;
|-&lt;br /&gt;
|sighttracepassed&lt;br /&gt;
|0x74&lt;br /&gt;
|0x24&lt;br /&gt;
|-&lt;br /&gt;
|physicstrace&lt;br /&gt;
|0x75&lt;br /&gt;
|0x25&lt;br /&gt;
|-&lt;br /&gt;
|physicstracenormal&lt;br /&gt;
|0x76&lt;br /&gt;
|0x26&lt;br /&gt;
|-&lt;br /&gt;
|playerphysicstrace&lt;br /&gt;
|0x77&lt;br /&gt;
|0x27&lt;br /&gt;
|-&lt;br /&gt;
|getgroundposition&lt;br /&gt;
|0x78&lt;br /&gt;
|0x28&lt;br /&gt;
|-&lt;br /&gt;
|getmovedelta&lt;br /&gt;
|0x79&lt;br /&gt;
|0x29&lt;br /&gt;
|-&lt;br /&gt;
|getangledelta&lt;br /&gt;
|0x7a&lt;br /&gt;
|0x2a&lt;br /&gt;
|-&lt;br /&gt;
|getnorthyaw&lt;br /&gt;
|0x7b&lt;br /&gt;
|0x2b&lt;br /&gt;
|-&lt;br /&gt;
|setnorthyaw&lt;br /&gt;
|0x96&lt;br /&gt;
|0x2c&lt;br /&gt;
|-&lt;br /&gt;
|setslowmotion&lt;br /&gt;
|0x97&lt;br /&gt;
|0x2d&lt;br /&gt;
|-&lt;br /&gt;
|randomint&lt;br /&gt;
|0x98&lt;br /&gt;
|0x2e&lt;br /&gt;
|-&lt;br /&gt;
|randomfloat&lt;br /&gt;
|0x99&lt;br /&gt;
|0x2f&lt;br /&gt;
|-&lt;br /&gt;
|randomintrange&lt;br /&gt;
|0x9a&lt;br /&gt;
|0x30&lt;br /&gt;
|-&lt;br /&gt;
|randomfloatrange&lt;br /&gt;
|0x9b&lt;br /&gt;
|0x31&lt;br /&gt;
|-&lt;br /&gt;
|sin&lt;br /&gt;
|0x9c&lt;br /&gt;
|0x32&lt;br /&gt;
|-&lt;br /&gt;
|cos&lt;br /&gt;
|0x9d&lt;br /&gt;
|0x33&lt;br /&gt;
|-&lt;br /&gt;
|tan&lt;br /&gt;
|0x9e&lt;br /&gt;
|0x34&lt;br /&gt;
|-&lt;br /&gt;
|asin&lt;br /&gt;
|0x9f&lt;br /&gt;
|0x35&lt;br /&gt;
|-&lt;br /&gt;
|acos&lt;br /&gt;
|0xa0&lt;br /&gt;
|0x36&lt;br /&gt;
|-&lt;br /&gt;
|atan&lt;br /&gt;
|0xa1&lt;br /&gt;
|0x37&lt;br /&gt;
|-&lt;br /&gt;
|int&lt;br /&gt;
|0xa2&lt;br /&gt;
|0x38&lt;br /&gt;
|-&lt;br /&gt;
|float&lt;br /&gt;
|0xa3&lt;br /&gt;
|0x39&lt;br /&gt;
|-&lt;br /&gt;
|abs&lt;br /&gt;
|0xa4&lt;br /&gt;
|0x3a&lt;br /&gt;
|-&lt;br /&gt;
|min&lt;br /&gt;
|0xa5&lt;br /&gt;
|0x3b&lt;br /&gt;
|-&lt;br /&gt;
|max&lt;br /&gt;
|0xc6&lt;br /&gt;
|0x3c&lt;br /&gt;
|-&lt;br /&gt;
|floor&lt;br /&gt;
|0xc7&lt;br /&gt;
|0x3d&lt;br /&gt;
|-&lt;br /&gt;
|ceil&lt;br /&gt;
|0xc8&lt;br /&gt;
|0x3e&lt;br /&gt;
|-&lt;br /&gt;
|exp&lt;br /&gt;
|0xc9&lt;br /&gt;
|0x3f&lt;br /&gt;
|-&lt;br /&gt;
|log&lt;br /&gt;
|0xca&lt;br /&gt;
|0x40&lt;br /&gt;
|-&lt;br /&gt;
|sqrt&lt;br /&gt;
|0xcb&lt;br /&gt;
|0x41&lt;br /&gt;
|-&lt;br /&gt;
|squared&lt;br /&gt;
|0xcc&lt;br /&gt;
|0x42&lt;br /&gt;
|-&lt;br /&gt;
|clamp&lt;br /&gt;
|0xcd&lt;br /&gt;
|0x43&lt;br /&gt;
|-&lt;br /&gt;
|angleclamp&lt;br /&gt;
|0xce&lt;br /&gt;
|0x44&lt;br /&gt;
|-&lt;br /&gt;
|angleclamp180&lt;br /&gt;
|0xcf&lt;br /&gt;
|0x45&lt;br /&gt;
|-&lt;br /&gt;
|vectorfromlinetopoint&lt;br /&gt;
|0xd0&lt;br /&gt;
|0x46&lt;br /&gt;
|-&lt;br /&gt;
|pointonsegmentnearesttopoint&lt;br /&gt;
|0xd1&lt;br /&gt;
|0x47&lt;br /&gt;
|-&lt;br /&gt;
|distance&lt;br /&gt;
|0xd2&lt;br /&gt;
|0x48&lt;br /&gt;
|-&lt;br /&gt;
|distance2d&lt;br /&gt;
|0xd3&lt;br /&gt;
|0x49&lt;br /&gt;
|-&lt;br /&gt;
|distancesquared&lt;br /&gt;
|0xd4&lt;br /&gt;
|0x4a&lt;br /&gt;
|-&lt;br /&gt;
|length&lt;br /&gt;
|0xd5&lt;br /&gt;
|0x4b&lt;br /&gt;
|-&lt;br /&gt;
|lengthsquared&lt;br /&gt;
|0xd6&lt;br /&gt;
|0x4c&lt;br /&gt;
|-&lt;br /&gt;
|closer&lt;br /&gt;
|0xd7&lt;br /&gt;
|0x4d&lt;br /&gt;
|-&lt;br /&gt;
|vectordot&lt;br /&gt;
|0xd8&lt;br /&gt;
|0x4e&lt;br /&gt;
|-&lt;br /&gt;
|vectornormalize&lt;br /&gt;
|0xf6&lt;br /&gt;
|0x4f&lt;br /&gt;
|-&lt;br /&gt;
|vectortoangles&lt;br /&gt;
|0xf7&lt;br /&gt;
|0x50&lt;br /&gt;
|-&lt;br /&gt;
|vectortoyaw&lt;br /&gt;
|0xf8&lt;br /&gt;
|0x51&lt;br /&gt;
|-&lt;br /&gt;
|vectorlerp&lt;br /&gt;
|0xf9&lt;br /&gt;
|0x52&lt;br /&gt;
|-&lt;br /&gt;
|anglestoup&lt;br /&gt;
|0xfa&lt;br /&gt;
|0x53&lt;br /&gt;
|-&lt;br /&gt;
|anglestoright&lt;br /&gt;
|0xfb&lt;br /&gt;
|0x54&lt;br /&gt;
|-&lt;br /&gt;
|anglestoforward&lt;br /&gt;
|0xfc&lt;br /&gt;
|0x55&lt;br /&gt;
|-&lt;br /&gt;
|combineangles&lt;br /&gt;
|0xfd&lt;br /&gt;
|0x56&lt;br /&gt;
|-&lt;br /&gt;
|transformmove&lt;br /&gt;
|0xfe&lt;br /&gt;
|0x57&lt;br /&gt;
|-&lt;br /&gt;
|issubstr&lt;br /&gt;
|0xff&lt;br /&gt;
|0x58&lt;br /&gt;
|-&lt;br /&gt;
|isendstr&lt;br /&gt;
|0x100&lt;br /&gt;
|0x59&lt;br /&gt;
|-&lt;br /&gt;
|getsubstr&lt;br /&gt;
|0x101&lt;br /&gt;
|0x5a&lt;br /&gt;
|-&lt;br /&gt;
|tolower&lt;br /&gt;
|0x102&lt;br /&gt;
|0x5b&lt;br /&gt;
|-&lt;br /&gt;
|strtok&lt;br /&gt;
|0x103&lt;br /&gt;
|0x5c&lt;br /&gt;
|-&lt;br /&gt;
|stricmp&lt;br /&gt;
|0x104&lt;br /&gt;
|0x5d&lt;br /&gt;
|-&lt;br /&gt;
|ambientplay&lt;br /&gt;
|0x105&lt;br /&gt;
|0x5e&lt;br /&gt;
|-&lt;br /&gt;
|ambientstop&lt;br /&gt;
|0x125&lt;br /&gt;
|0x5f&lt;br /&gt;
|-&lt;br /&gt;
|precachemodel&lt;br /&gt;
|0x126&lt;br /&gt;
|0x60&lt;br /&gt;
|-&lt;br /&gt;
|precacheshellshock&lt;br /&gt;
|0x127&lt;br /&gt;
|0x61&lt;br /&gt;
|-&lt;br /&gt;
|precacheitem&lt;br /&gt;
|0x128&lt;br /&gt;
|0x62&lt;br /&gt;
|-&lt;br /&gt;
|precacheshader&lt;br /&gt;
|0x129&lt;br /&gt;
|0x63&lt;br /&gt;
|-&lt;br /&gt;
|precachestring&lt;br /&gt;
|0x12a&lt;br /&gt;
|0x64&lt;br /&gt;
|-&lt;br /&gt;
|precachemenu&lt;br /&gt;
|0x12b&lt;br /&gt;
|0x65&lt;br /&gt;
|-&lt;br /&gt;
|precacherumble&lt;br /&gt;
|0x12c&lt;br /&gt;
|0x66&lt;br /&gt;
|-&lt;br /&gt;
|precachelocationselector&lt;br /&gt;
|0x12d&lt;br /&gt;
|0x67&lt;br /&gt;
|-&lt;br /&gt;
|precacheleaderboards&lt;br /&gt;
|0x12e&lt;br /&gt;
|0x68&lt;br /&gt;
|-&lt;br /&gt;
|precacheheadicon&lt;br /&gt;
|0x146&lt;br /&gt;
|0xe9&lt;br /&gt;
|-&lt;br /&gt;
|loadfx&lt;br /&gt;
|0x12f&lt;br /&gt;
|0x1c5&lt;br /&gt;
|-&lt;br /&gt;
|playfx&lt;br /&gt;
|0x130&lt;br /&gt;
|0x1c6&lt;br /&gt;
|-&lt;br /&gt;
|unknown&lt;br /&gt;
|N/A&lt;br /&gt;
|0x69&lt;br /&gt;
|-&lt;br /&gt;
|playfxontag&lt;br /&gt;
|0x131&lt;br /&gt;
|0x6a&lt;br /&gt;
|-&lt;br /&gt;
|stopfxontag&lt;br /&gt;
|0x132&lt;br /&gt;
|0x6b&lt;br /&gt;
|-&lt;br /&gt;
|stopfxontag2&lt;br /&gt;
|N/A&lt;br /&gt;
|0x6c&lt;br /&gt;
|-&lt;br /&gt;
|playloopedfx&lt;br /&gt;
|0x133&lt;br /&gt;
|0x6d&lt;br /&gt;
|-&lt;br /&gt;
|spawnfx&lt;br /&gt;
|0x134&lt;br /&gt;
|0x6e&lt;br /&gt;
|-&lt;br /&gt;
|triggerfx&lt;br /&gt;
|0x135&lt;br /&gt;
|0x6f&lt;br /&gt;
|-&lt;br /&gt;
|playfxontagforclients&lt;br /&gt;
|0x136&lt;br /&gt;
|0x70&lt;br /&gt;
|-&lt;br /&gt;
|physicsexplosionsphere&lt;br /&gt;
|0x15a&lt;br /&gt;
|0x71&lt;br /&gt;
|-&lt;br /&gt;
|physicsexplosioncylinder&lt;br /&gt;
|0x15b&lt;br /&gt;
|0x72&lt;br /&gt;
|-&lt;br /&gt;
|physicsjolt&lt;br /&gt;
|0x15c&lt;br /&gt;
|0x73&lt;br /&gt;
|-&lt;br /&gt;
|physicsjitter&lt;br /&gt;
|0x15d&lt;br /&gt;
|0x74&lt;br /&gt;
|-&lt;br /&gt;
|setexpfog&lt;br /&gt;
|0x15e&lt;br /&gt;
|0x75&lt;br /&gt;
|-&lt;br /&gt;
|isexplosivedamagemod&lt;br /&gt;
|0x15f&lt;br /&gt;
|0x76&lt;br /&gt;
|-&lt;br /&gt;
|radiusdamage&lt;br /&gt;
|0x160&lt;br /&gt;
|0x77&lt;br /&gt;
|-&lt;br /&gt;
|setplayerignoreradiusdamage&lt;br /&gt;
|0x161&lt;br /&gt;
|0x78&lt;br /&gt;
|-&lt;br /&gt;
|glassradiusdamage&lt;br /&gt;
|0x162&lt;br /&gt;
|0x79&lt;br /&gt;
|-&lt;br /&gt;
|earthquake&lt;br /&gt;
|0x163&lt;br /&gt;
|0x7a&lt;br /&gt;
|-&lt;br /&gt;
|getnumparts&lt;br /&gt;
|0x164&lt;br /&gt;
|0x7b&lt;br /&gt;
|-&lt;br /&gt;
|getpartname&lt;br /&gt;
|0x182&lt;br /&gt;
|0x7c&lt;br /&gt;
|-&lt;br /&gt;
|weaponfiretime&lt;br /&gt;
|0x183&lt;br /&gt;
|0x7d&lt;br /&gt;
|-&lt;br /&gt;
|weaponclipsize&lt;br /&gt;
|0x184&lt;br /&gt;
|0x7e&lt;br /&gt;
|-&lt;br /&gt;
|weaponisauto&lt;br /&gt;
|0x185&lt;br /&gt;
|0x7f&lt;br /&gt;
|-&lt;br /&gt;
|weaponissemiauto&lt;br /&gt;
|0x186&lt;br /&gt;
|0x80&lt;br /&gt;
|-&lt;br /&gt;
|weaponisboltaction&lt;br /&gt;
|0x187&lt;br /&gt;
|0x81&lt;br /&gt;
|-&lt;br /&gt;
|weaponinheritsperks&lt;br /&gt;
|0x188&lt;br /&gt;
|0x82&lt;br /&gt;
|-&lt;br /&gt;
|weaponburstcount&lt;br /&gt;
|0x189&lt;br /&gt;
|0x83&lt;br /&gt;
|-&lt;br /&gt;
|weapontype&lt;br /&gt;
|0x18a&lt;br /&gt;
|0x84&lt;br /&gt;
|-&lt;br /&gt;
|weaponclass&lt;br /&gt;
|0x18b&lt;br /&gt;
|0x85&lt;br /&gt;
|-&lt;br /&gt;
|weaponinventorytype&lt;br /&gt;
|0x1b5&lt;br /&gt;
|0x86&lt;br /&gt;
|-&lt;br /&gt;
|weaponstartammo&lt;br /&gt;
|0x1b6&lt;br /&gt;
|0x87&lt;br /&gt;
|-&lt;br /&gt;
|weaponmaxammo&lt;br /&gt;
|0x1b7&lt;br /&gt;
|0x88&lt;br /&gt;
|-&lt;br /&gt;
|weaponaltweaponname&lt;br /&gt;
|0x1b8&lt;br /&gt;
|0x89&lt;br /&gt;
|-&lt;br /&gt;
|isweaponcliponly&lt;br /&gt;
|0x1b9&lt;br /&gt;
|0x8a&lt;br /&gt;
|-&lt;br /&gt;
|isweapondetonationtimed&lt;br /&gt;
|0x1ba&lt;br /&gt;
|0x8b&lt;br /&gt;
|-&lt;br /&gt;
|weaponhasthermalscope&lt;br /&gt;
|0x1bb&lt;br /&gt;
|0x8c&lt;br /&gt;
|-&lt;br /&gt;
|getvehiclenode&lt;br /&gt;
|0x1bc&lt;br /&gt;
|0x8d&lt;br /&gt;
|-&lt;br /&gt;
|getvehiclenodearray&lt;br /&gt;
|0x1bd&lt;br /&gt;
|0x8e&lt;br /&gt;
|-&lt;br /&gt;
|getallvehiclenodes&lt;br /&gt;
|0x1be&lt;br /&gt;
|0x8f&lt;br /&gt;
|-&lt;br /&gt;
|getnumvehicles&lt;br /&gt;
|0x1bf&lt;br /&gt;
|0x90&lt;br /&gt;
|-&lt;br /&gt;
|precachevehicle&lt;br /&gt;
|0x1c0&lt;br /&gt;
|0x91&lt;br /&gt;
|-&lt;br /&gt;
|spawnvehicle&lt;br /&gt;
|0x1c1&lt;br /&gt;
|0x92&lt;br /&gt;
|-&lt;br /&gt;
|getarray&lt;br /&gt;
|0x1c2&lt;br /&gt;
|0x93&lt;br /&gt;
|-&lt;br /&gt;
|getspawnerarray&lt;br /&gt;
|0x198&lt;br /&gt;
|0x94&lt;br /&gt;
|-&lt;br /&gt;
|playrumbleonposition&lt;br /&gt;
|0x199&lt;br /&gt;
|0x95&lt;br /&gt;
|-&lt;br /&gt;
|playrumblelooponposition&lt;br /&gt;
|0x19a&lt;br /&gt;
|0x96&lt;br /&gt;
|-&lt;br /&gt;
|stopallrumbles&lt;br /&gt;
|0x19b&lt;br /&gt;
|0x97&lt;br /&gt;
|-&lt;br /&gt;
|soundexists&lt;br /&gt;
|0x19c&lt;br /&gt;
|0x98&lt;br /&gt;
|-&lt;br /&gt;
|openfile&lt;br /&gt;
|0x19d&lt;br /&gt;
|0x99&lt;br /&gt;
|-&lt;br /&gt;
|closefile&lt;br /&gt;
|0x19e&lt;br /&gt;
|0x9a&lt;br /&gt;
|-&lt;br /&gt;
|fprintln&lt;br /&gt;
|0x19f&lt;br /&gt;
|0x9b&lt;br /&gt;
|-&lt;br /&gt;
|fprintfields&lt;br /&gt;
|0x1a0&lt;br /&gt;
|0x9c&lt;br /&gt;
|-&lt;br /&gt;
|freadln&lt;br /&gt;
|0x1a1&lt;br /&gt;
|0x9d&lt;br /&gt;
|-&lt;br /&gt;
|fgetarg&lt;br /&gt;
|0x1a2&lt;br /&gt;
|0x9e&lt;br /&gt;
|-&lt;br /&gt;
|setminimap&lt;br /&gt;
|0x1a3&lt;br /&gt;
|0x9f&lt;br /&gt;
|-&lt;br /&gt;
|setthermalbodymaterial&lt;br /&gt;
|0x1a4&lt;br /&gt;
|0xa0&lt;br /&gt;
|-&lt;br /&gt;
|getarraykeys&lt;br /&gt;
|0x1a5&lt;br /&gt;
|0xa1&lt;br /&gt;
|-&lt;br /&gt;
|getfirstarraykey&lt;br /&gt;
|0x1a6&lt;br /&gt;
|0xa2&lt;br /&gt;
|-&lt;br /&gt;
|getnextarraykey&lt;br /&gt;
|0x18c&lt;br /&gt;
|0xa3&lt;br /&gt;
|-&lt;br /&gt;
|sortbydistance&lt;br /&gt;
|0x18d&lt;br /&gt;
|0xa4&lt;br /&gt;
|-&lt;br /&gt;
|tablelookup&lt;br /&gt;
|0x18e&lt;br /&gt;
|0xa5&lt;br /&gt;
|-&lt;br /&gt;
|tablelookupbyrow&lt;br /&gt;
|0x18f&lt;br /&gt;
|0xa6&lt;br /&gt;
|-&lt;br /&gt;
|tablelookupistring&lt;br /&gt;
|0x190&lt;br /&gt;
|0xa7&lt;br /&gt;
|-&lt;br /&gt;
|tablelookupistringbyrow&lt;br /&gt;
|0x191&lt;br /&gt;
|0xa8&lt;br /&gt;
|-&lt;br /&gt;
|tablelookuprownum&lt;br /&gt;
|0x192&lt;br /&gt;
|0xa9&lt;br /&gt;
|-&lt;br /&gt;
|getmissileowner&lt;br /&gt;
|0x193&lt;br /&gt;
|0xaa&lt;br /&gt;
|-&lt;br /&gt;
|magicbullet&lt;br /&gt;
|0x194&lt;br /&gt;
|0xab&lt;br /&gt;
|-&lt;br /&gt;
|getweaponflashtagname&lt;br /&gt;
|0x195&lt;br /&gt;
|0xac&lt;br /&gt;
|-&lt;br /&gt;
|averagepoint&lt;br /&gt;
|0x196&lt;br /&gt;
|0xad&lt;br /&gt;
|-&lt;br /&gt;
|averagenormal&lt;br /&gt;
|0x197&lt;br /&gt;
|0xae&lt;br /&gt;
|-&lt;br /&gt;
|getglass&lt;br /&gt;
|0x1a7&lt;br /&gt;
|0xaf&lt;br /&gt;
|-&lt;br /&gt;
|getglassarray&lt;br /&gt;
|0x1a8&lt;br /&gt;
|0xb0&lt;br /&gt;
|-&lt;br /&gt;
|getglassorigin&lt;br /&gt;
|0x1a9&lt;br /&gt;
|0xb1&lt;br /&gt;
|-&lt;br /&gt;
|isglassdestroyed&lt;br /&gt;
|0x1aa&lt;br /&gt;
|0xb2&lt;br /&gt;
|-&lt;br /&gt;
|destroyglass&lt;br /&gt;
|0x1ab&lt;br /&gt;
|0xb3&lt;br /&gt;
|-&lt;br /&gt;
|deleteglass&lt;br /&gt;
|0x1ac&lt;br /&gt;
|0xb4&lt;br /&gt;
|-&lt;br /&gt;
|getentchannelscount&lt;br /&gt;
|0x1ad&lt;br /&gt;
|0xb5&lt;br /&gt;
|-&lt;br /&gt;
|getentchannelname&lt;br /&gt;
|N/A&lt;br /&gt;
|0xb6&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- objective functions --&amp;gt;&lt;br /&gt;
|objective_add&lt;br /&gt;
|0x1af&lt;br /&gt;
|0xb7&lt;br /&gt;
|-&lt;br /&gt;
|objective_delete&lt;br /&gt;
|0x1b0&lt;br /&gt;
|0xb8&lt;br /&gt;
|-&lt;br /&gt;
|objective_state&lt;br /&gt;
|0x1b1&lt;br /&gt;
|0xb9&lt;br /&gt;
|-&lt;br /&gt;
|objective_icon&lt;br /&gt;
|0x1b2&lt;br /&gt;
|0xba&lt;br /&gt;
|-&lt;br /&gt;
|objective_position&lt;br /&gt;
|0x1b3&lt;br /&gt;
|0xbb&lt;br /&gt;
|-&lt;br /&gt;
|objective_current&lt;br /&gt;
|0x1b4&lt;br /&gt;
|0xbc&lt;br /&gt;
|-&lt;br /&gt;
|objective_onentity&lt;br /&gt;
|0x165&lt;br /&gt;
|0xbd&lt;br /&gt;
|-&lt;br /&gt;
|objective_team&lt;br /&gt;
|0x166&lt;br /&gt;
|0xbe&lt;br /&gt;
|-&lt;br /&gt;
|objective_player&lt;br /&gt;
|0x167&lt;br /&gt;
|0xbf&lt;br /&gt;
|-&lt;br /&gt;
|objective_playerteam&lt;br /&gt;
|0x168&lt;br /&gt;
|0xc0&lt;br /&gt;
|-&lt;br /&gt;
|objective_playerenemyteam&lt;br /&gt;
|0x169&lt;br /&gt;
|0xc1&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- function list 2 --&amp;gt;&lt;br /&gt;
|iprintln&lt;br /&gt;
|0x16a&lt;br /&gt;
|0xc2&lt;br /&gt;
|-&lt;br /&gt;
|iprintlnbold&lt;br /&gt;
|0x16b&lt;br /&gt;
|0xc3&lt;br /&gt;
|-&lt;br /&gt;
|logstring&lt;br /&gt;
|0x16c&lt;br /&gt;
|0xc4&lt;br /&gt;
|-&lt;br /&gt;
|getent&lt;br /&gt;
|0x16d&lt;br /&gt;
|0xc5&lt;br /&gt;
|-&lt;br /&gt;
|getentarray&lt;br /&gt;
|0x16e&lt;br /&gt;
|0xc6&lt;br /&gt;
|-&lt;br /&gt;
|spawnplane&lt;br /&gt;
|0x16f&lt;br /&gt;
|0xc7&lt;br /&gt;
|-&lt;br /&gt;
|spawnstruct&lt;br /&gt;
|0x170&lt;br /&gt;
|0xc8&lt;br /&gt;
|-&lt;br /&gt;
|spawnhelicopter&lt;br /&gt;
|0x171&lt;br /&gt;
|0xc9&lt;br /&gt;
|-&lt;br /&gt;
|isalive&lt;br /&gt;
|0x172&lt;br /&gt;
|0xca&lt;br /&gt;
|-&lt;br /&gt;
|isspawner&lt;br /&gt;
|0x173&lt;br /&gt;
|0xcb&lt;br /&gt;
|-&lt;br /&gt;
|createattractorent&lt;br /&gt;
|0x174&lt;br /&gt;
|0xcc&lt;br /&gt;
|-&lt;br /&gt;
|createattractororigin&lt;br /&gt;
|0x175&lt;br /&gt;
|0xcd&lt;br /&gt;
|-&lt;br /&gt;
|createrepulsorent&lt;br /&gt;
|0x176&lt;br /&gt;
|0xce&lt;br /&gt;
|-&lt;br /&gt;
|createrepulsororigin&lt;br /&gt;
|0x177&lt;br /&gt;
|0xcf&lt;br /&gt;
|-&lt;br /&gt;
|deleteattractor&lt;br /&gt;
|0x178&lt;br /&gt;
|0xd0&lt;br /&gt;
|-&lt;br /&gt;
|playsoundatpos&lt;br /&gt;
|0x179&lt;br /&gt;
|0xd1&lt;br /&gt;
|-&lt;br /&gt;
|newhudelem&lt;br /&gt;
|0x17a&lt;br /&gt;
|0x1c7&lt;br /&gt;
|-&lt;br /&gt;
|newclienthudelem&lt;br /&gt;
|0x17b&lt;br /&gt;
|0xd2&lt;br /&gt;
|-&lt;br /&gt;
|newteamhudelem&lt;br /&gt;
|0x17c&lt;br /&gt;
|0xd3&lt;br /&gt;
|-&lt;br /&gt;
|newdamageindicatorhudelem&lt;br /&gt;
|N/A&lt;br /&gt;
|0xd4&lt;br /&gt;
|-&lt;br /&gt;
|resettimeout&lt;br /&gt;
|0x17d&lt;br /&gt;
|0xd5&lt;br /&gt;
|-&lt;br /&gt;
|precachefxteamthermal&lt;br /&gt;
|0x17e&lt;br /&gt;
|0xd6&lt;br /&gt;
|-&lt;br /&gt;
|isplayer&lt;br /&gt;
|0x17f&lt;br /&gt;
|0xd7&lt;br /&gt;
|-&lt;br /&gt;
|isplayernumber&lt;br /&gt;
|0x180&lt;br /&gt;
|0xd8&lt;br /&gt;
|-&lt;br /&gt;
|setsunlight&lt;br /&gt;
|0x39&lt;br /&gt;
|0x191&lt;br /&gt;
|-&lt;br /&gt;
|resetsunlight&lt;br /&gt;
|0x3a&lt;br /&gt;
|0x192&lt;br /&gt;
|-&lt;br /&gt;
|setwinningplayer&lt;br /&gt;
|0x181&lt;br /&gt;
|0xd9&lt;br /&gt;
|-&lt;br /&gt;
|setwinningteam&lt;br /&gt;
|0x137&lt;br /&gt;
|0xda&lt;br /&gt;
|-&lt;br /&gt;
|announcement&lt;br /&gt;
|0x138&lt;br /&gt;
|0xdb&lt;br /&gt;
|-&lt;br /&gt;
|clientannouncement&lt;br /&gt;
|0x139&lt;br /&gt;
|0xdc&lt;br /&gt;
|-&lt;br /&gt;
|getteamscore&lt;br /&gt;
|0x13a&lt;br /&gt;
|0xdd&lt;br /&gt;
|-&lt;br /&gt;
|setteamscore&lt;br /&gt;
|0x13b&lt;br /&gt;
|0xde&lt;br /&gt;
|-&lt;br /&gt;
|setclientnamemode&lt;br /&gt;
|0x13c&lt;br /&gt;
|0xdf&lt;br /&gt;
|-&lt;br /&gt;
|updateclientnames&lt;br /&gt;
|0x13d&lt;br /&gt;
|0xe0&lt;br /&gt;
|-&lt;br /&gt;
|getteamplayersalive&lt;br /&gt;
|0x13e&lt;br /&gt;
|0xe1&lt;br /&gt;
|-&lt;br /&gt;
|logprint&lt;br /&gt;
|0x13f&lt;br /&gt;
|0xe2&lt;br /&gt;
|-&lt;br /&gt;
|worldentnumber&lt;br /&gt;
|0x140&lt;br /&gt;
|0xe3&lt;br /&gt;
|-&lt;br /&gt;
|obituary&lt;br /&gt;
|0x141&lt;br /&gt;
|0xe4&lt;br /&gt;
|-&lt;br /&gt;
|positionwouldtelefrag&lt;br /&gt;
|0x142&lt;br /&gt;
|0xe5&lt;br /&gt;
|-&lt;br /&gt;
|canspawn&lt;br /&gt;
|0x143&lt;br /&gt;
|0xe6&lt;br /&gt;
|-&lt;br /&gt;
|getstarttime&lt;br /&gt;
|0x144&lt;br /&gt;
|0xe7&lt;br /&gt;
|-&lt;br /&gt;
|precachestatusicon&lt;br /&gt;
|0x145&lt;br /&gt;
|0xe8&lt;br /&gt;
|-&lt;br /&gt;
|precacheminimapicon&lt;br /&gt;
|0x147&lt;br /&gt;
|0xea&lt;br /&gt;
|-&lt;br /&gt;
|precachempanim&lt;br /&gt;
|0x148&lt;br /&gt;
|0xeb&lt;br /&gt;
|-&lt;br /&gt;
|restart&lt;br /&gt;
|0x149&lt;br /&gt;
|0xec&lt;br /&gt;
|-&lt;br /&gt;
|exitlevel&lt;br /&gt;
|0x14a&lt;br /&gt;
|0xed&lt;br /&gt;
|-&lt;br /&gt;
|addtestclient&lt;br /&gt;
|0x14b&lt;br /&gt;
|0xee&lt;br /&gt;
|-&lt;br /&gt;
|makedvarserverinfo&lt;br /&gt;
|0x14c&lt;br /&gt;
|0xef&lt;br /&gt;
|-&lt;br /&gt;
|setarchive&lt;br /&gt;
|0x14d&lt;br /&gt;
|0xf0&lt;br /&gt;
|-&lt;br /&gt;
|allclientsprint&lt;br /&gt;
|0x14e&lt;br /&gt;
|0xf1&lt;br /&gt;
|-&lt;br /&gt;
|clientprint&lt;br /&gt;
|0x14f&lt;br /&gt;
|0xf2&lt;br /&gt;
|-&lt;br /&gt;
|mapexists&lt;br /&gt;
|0x150&lt;br /&gt;
|0xf3&lt;br /&gt;
|-&lt;br /&gt;
|isvalidgametype&lt;br /&gt;
|0x151&lt;br /&gt;
|0xf4&lt;br /&gt;
|-&lt;br /&gt;
|matchend&lt;br /&gt;
|0x152&lt;br /&gt;
|0xf5&lt;br /&gt;
|-&lt;br /&gt;
|setplayerteamrank&lt;br /&gt;
|0x153&lt;br /&gt;
|0xf6&lt;br /&gt;
|-&lt;br /&gt;
|endparty&lt;br /&gt;
|0x154&lt;br /&gt;
|0xf7&lt;br /&gt;
|-&lt;br /&gt;
|setteamradar&lt;br /&gt;
|0x155&lt;br /&gt;
|0xf8&lt;br /&gt;
|-&lt;br /&gt;
|getteamradar&lt;br /&gt;
|0x156&lt;br /&gt;
|0xf9&lt;br /&gt;
|-&lt;br /&gt;
|setteamradarstrength&lt;br /&gt;
|0x157&lt;br /&gt;
|0xfa&lt;br /&gt;
|-&lt;br /&gt;
|getteamradarstrength&lt;br /&gt;
|0x158&lt;br /&gt;
|0xfb&lt;br /&gt;
|-&lt;br /&gt;
|getuavstrengthmin&lt;br /&gt;
|0x159&lt;br /&gt;
|0xfc&lt;br /&gt;
|-&lt;br /&gt;
|getuavstrengthmax&lt;br /&gt;
|0x106&lt;br /&gt;
|0xfd&lt;br /&gt;
|-&lt;br /&gt;
|getuavstrengthlevelneutral&lt;br /&gt;
|0x107&lt;br /&gt;
|0xfe&lt;br /&gt;
|-&lt;br /&gt;
|getuavstrengthlevelshowenemyfastsweep&lt;br /&gt;
|0x108&lt;br /&gt;
|0xff&lt;br /&gt;
|-&lt;br /&gt;
|getuavstrengthlevelshowenemydirectional&lt;br /&gt;
|0x109&lt;br /&gt;
|0x100&lt;br /&gt;
|-&lt;br /&gt;
|blockteamradar&lt;br /&gt;
|0x10a&lt;br /&gt;
|0x101&lt;br /&gt;
|-&lt;br /&gt;
|unblockteamradar&lt;br /&gt;
|0x10b&lt;br /&gt;
|0x102&lt;br /&gt;
|-&lt;br /&gt;
|isteamradarblocked&lt;br /&gt;
|0x10c&lt;br /&gt;
|0x103&lt;br /&gt;
|-&lt;br /&gt;
|getassignedteam&lt;br /&gt;
|0x10d&lt;br /&gt;
|0x104&lt;br /&gt;
|-&lt;br /&gt;
|setmatchdata&lt;br /&gt;
|0x10e&lt;br /&gt;
|0x105&lt;br /&gt;
|-&lt;br /&gt;
|getmatchdata&lt;br /&gt;
|0x10f&lt;br /&gt;
|0x106&lt;br /&gt;
|-&lt;br /&gt;
|sendmatchdata&lt;br /&gt;
|0x110&lt;br /&gt;
|0x107&lt;br /&gt;
|-&lt;br /&gt;
|clearmatchdata&lt;br /&gt;
|0x111&lt;br /&gt;
|0x108&lt;br /&gt;
|-&lt;br /&gt;
|setmatchdatadef&lt;br /&gt;
|0x112&lt;br /&gt;
|0x109&lt;br /&gt;
|-&lt;br /&gt;
|setmatchclientip&lt;br /&gt;
|0x113&lt;br /&gt;
|0x10a&lt;br /&gt;
|-&lt;br /&gt;
|setmatchdataid&lt;br /&gt;
|0x114&lt;br /&gt;
|0x10b&lt;br /&gt;
|-&lt;br /&gt;
|setclientmatchdata&lt;br /&gt;
|0x115&lt;br /&gt;
|0x10c&lt;br /&gt;
|-&lt;br /&gt;
|getclientmatchdata&lt;br /&gt;
|0x116&lt;br /&gt;
|0x10d&lt;br /&gt;
|-&lt;br /&gt;
|setclientmatchdatadef&lt;br /&gt;
|0x117&lt;br /&gt;
|0x10e&lt;br /&gt;
|-&lt;br /&gt;
|sendclientmatchdata&lt;br /&gt;
|0x118&lt;br /&gt;
|0x10f&lt;br /&gt;
|-&lt;br /&gt;
|getbuildversion&lt;br /&gt;
|0x119&lt;br /&gt;
|0x110&lt;br /&gt;
|-&lt;br /&gt;
|getbuildnumber&lt;br /&gt;
|0x11a&lt;br /&gt;
|0x111&lt;br /&gt;
|-&lt;br /&gt;
|getsystemtime&lt;br /&gt;
|0x11b&lt;br /&gt;
|0x112&lt;br /&gt;
|-&lt;br /&gt;
|getmatchrulesdata&lt;br /&gt;
|0x11c&lt;br /&gt;
|0x113&lt;br /&gt;
|-&lt;br /&gt;
|isusingmatchrulesdata&lt;br /&gt;
|0x11d&lt;br /&gt;
|0x114&lt;br /&gt;
|-&lt;br /&gt;
|kick&lt;br /&gt;
|0x11e&lt;br /&gt;
|0x115&lt;br /&gt;
|-&lt;br /&gt;
|issplitscreen&lt;br /&gt;
|0x11f&lt;br /&gt;
|0x116&lt;br /&gt;
|-&lt;br /&gt;
|setmapcenter&lt;br /&gt;
|0x120&lt;br /&gt;
|0x117&lt;br /&gt;
|-&lt;br /&gt;
|setgameendtime&lt;br /&gt;
|0x121&lt;br /&gt;
|0x118&lt;br /&gt;
|-&lt;br /&gt;
|visionsetnaked&lt;br /&gt;
|0x122&lt;br /&gt;
|0x119&lt;br /&gt;
|-&lt;br /&gt;
|visionsetnight&lt;br /&gt;
|0x123&lt;br /&gt;
|0x11a&lt;br /&gt;
|-&lt;br /&gt;
|visionsetmissilecam&lt;br /&gt;
|0x124&lt;br /&gt;
|0x11b&lt;br /&gt;
|-&lt;br /&gt;
|visionsetthermal&lt;br /&gt;
|0xd9&lt;br /&gt;
|0x11c&lt;br /&gt;
|-&lt;br /&gt;
|visionsetpain&lt;br /&gt;
|0xda&lt;br /&gt;
|0x11d&lt;br /&gt;
|-&lt;br /&gt;
|endlobby&lt;br /&gt;
|0xdb&lt;br /&gt;
|0x11e&lt;br /&gt;
|-&lt;br /&gt;
|ambience&lt;br /&gt;
|0xdc&lt;br /&gt;
|0x11f&lt;br /&gt;
|-&lt;br /&gt;
|getmapcustom&lt;br /&gt;
|0xdd&lt;br /&gt;
|0x120&lt;br /&gt;
|-&lt;br /&gt;
|updateskill&lt;br /&gt;
|0xde&lt;br /&gt;
|0x121&lt;br /&gt;
|-&lt;br /&gt;
|spawnsighttrace&lt;br /&gt;
|0xdf&lt;br /&gt;
|0x122&lt;br /&gt;
|-&lt;br /&gt;
|incrementcounter&lt;br /&gt;
|N/A&lt;br /&gt;
|0x123&lt;br /&gt;
|-&lt;br /&gt;
|getcountertotal&lt;br /&gt;
|N/A&lt;br /&gt;
|0x124&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Field IDs ==&lt;br /&gt;
&#039;&#039;&#039;Client Fields&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!rowspan=&amp;quot;2&amp;quot;|Field&lt;br /&gt;
!colspan=&amp;quot;1&amp;quot;|MW3&lt;br /&gt;
!colspan=&amp;quot;1&amp;quot;|AW&lt;br /&gt;
|-&lt;br /&gt;
!PS3 ID&lt;br /&gt;
!PS3 ID&lt;br /&gt;
|-&lt;br /&gt;
| name&lt;br /&gt;
| 0x2D1&lt;br /&gt;
| 0x2AF&lt;br /&gt;
|-&lt;br /&gt;
| sessionteam  &lt;br /&gt;
| 0x2D2&lt;br /&gt;
| 0x3C1&lt;br /&gt;
|-&lt;br /&gt;
| sessionstate&lt;br /&gt;
| 0x2D3&lt;br /&gt;
| 0x3C0&lt;br /&gt;
|-&lt;br /&gt;
| maxhealth&lt;br /&gt;
| 0x2D4&lt;br /&gt;
| 0x279&lt;br /&gt;
|-&lt;br /&gt;
| score&lt;br /&gt;
| 0x2D5&lt;br /&gt;
| 0x394&lt;br /&gt;
|-&lt;br /&gt;
| deaths&lt;br /&gt;
| 0x2D6&lt;br /&gt;
| 0x112&lt;br /&gt;
|-&lt;br /&gt;
| extrascore0&lt;br /&gt;
|&lt;br /&gt;
| 0x16D&lt;br /&gt;
|-&lt;br /&gt;
| extrascore1&lt;br /&gt;
|&lt;br /&gt;
| 0x16E&lt;br /&gt;
|-&lt;br /&gt;
| killstreakcount&lt;br /&gt;
|&lt;br /&gt;
| 0x242&lt;br /&gt;
|-&lt;br /&gt;
| objective&lt;br /&gt;
|&lt;br /&gt;
| 0x2DA&lt;br /&gt;
|-&lt;br /&gt;
| statusicon&lt;br /&gt;
| 0x2D7&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| headicon&lt;br /&gt;
| 0x2D8&lt;br /&gt;
| 0x1E8&lt;br /&gt;
|-&lt;br /&gt;
| headiconteam&lt;br /&gt;
| 0x2D9&lt;br /&gt;
| 0x1E9&lt;br /&gt;
|-&lt;br /&gt;
| kills&lt;br /&gt;
| 0x2DB&lt;br /&gt;
| 0x240&lt;br /&gt;
|-&lt;br /&gt;
| assists&lt;br /&gt;
| 0x2DC&lt;br /&gt;
| 0x53&lt;br /&gt;
|-&lt;br /&gt;
| hasradar&lt;br /&gt;
| 0x2DD&lt;br /&gt;
| 0x1E4&lt;br /&gt;
|-&lt;br /&gt;
| isradarblocked &lt;br /&gt;
| 0x2DE&lt;br /&gt;
| 0x217&lt;br /&gt;
|-&lt;br /&gt;
| radarstrength&lt;br /&gt;
| 0x2DF&lt;br /&gt;
| 0x357&lt;br /&gt;
|-&lt;br /&gt;
| radarshowenemydirection&lt;br /&gt;
| 0x2E0&lt;br /&gt;
| 0x356&lt;br /&gt;
|-&lt;br /&gt;
| radarmode&lt;br /&gt;
| 0x2E1&lt;br /&gt;
| 0x355&lt;br /&gt;
|-&lt;br /&gt;
| enemyradarmode&lt;br /&gt;
|&lt;br /&gt;
| 0x14D&lt;br /&gt;
|-&lt;br /&gt;
| forcespectatorclient&lt;br /&gt;
| 0x2E2&lt;br /&gt;
| 0x19C&lt;br /&gt;
|-&lt;br /&gt;
| killcamentity&lt;br /&gt;
| 0x2E3&lt;br /&gt;
| 0x23E&lt;br /&gt;
|-&lt;br /&gt;
| killcamentitylookat&lt;br /&gt;
| 0x2E4&lt;br /&gt;
| 0x23F&lt;br /&gt;
|-&lt;br /&gt;
| spectatekillcam&lt;br /&gt;
|&lt;br /&gt;
| 0x3E3&lt;br /&gt;
|-&lt;br /&gt;
| archivetime&lt;br /&gt;
| 0x2E5&lt;br /&gt;
| 0x4D&lt;br /&gt;
|-&lt;br /&gt;
| psoffsettime &lt;br /&gt;
| 0x2E6&lt;br /&gt;
| 0x352&lt;br /&gt;
|-&lt;br /&gt;
| pers&lt;br /&gt;
| 0x2E7&lt;br /&gt;
| 0x311&lt;br /&gt;
|-&lt;br /&gt;
| game_extrainfo&lt;br /&gt;
|&lt;br /&gt;
| 0x1B5&lt;br /&gt;
|-&lt;br /&gt;
| playercardpatch&lt;br /&gt;
|&lt;br /&gt;
| 0x325&lt;br /&gt;
|-&lt;br /&gt;
| playercardbackground&lt;br /&gt;
|&lt;br /&gt;
| 0x324&lt;br /&gt;
|}&lt;br /&gt;
&#039;&#039;&#039;Entity Fields&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot;|Field&lt;br /&gt;
! colspan=&amp;quot;1&amp;quot;|MW3&lt;br /&gt;
! colspan=&amp;quot;1&amp;quot;|AW&lt;br /&gt;
|-&lt;br /&gt;
! PS3 ID&lt;br /&gt;
! PS3 ID&lt;br /&gt;
|-&lt;br /&gt;
| code_classname&lt;br /&gt;
| 0x2C3&lt;br /&gt;
| 0xB1&lt;br /&gt;
|-&lt;br /&gt;
| classname&lt;br /&gt;
| 0x2C4&lt;br /&gt;
| 0xAF&lt;br /&gt;
|-&lt;br /&gt;
| origin&lt;br /&gt;
| 0x2C5&lt;br /&gt;
| 0x2EA&lt;br /&gt;
|-&lt;br /&gt;
| model&lt;br /&gt;
| 0x2C6&lt;br /&gt;
| 0x2A4&lt;br /&gt;
|-&lt;br /&gt;
| spawnflags&lt;br /&gt;
| 0x2C7&lt;br /&gt;
| 0x3DF&lt;br /&gt;
|-&lt;br /&gt;
| target&lt;br /&gt;
| 0x2C8&lt;br /&gt;
| 0x4A9&lt;br /&gt;
|-&lt;br /&gt;
| targetname&lt;br /&gt;
| 0x2C9&lt;br /&gt;
| 0x4AB&lt;br /&gt;
|-&lt;br /&gt;
| count&lt;br /&gt;
| 0x2CA&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| health&lt;br /&gt;
| 0x2CB&lt;br /&gt;
| 0x1EB&lt;br /&gt;
|-&lt;br /&gt;
| dmg&lt;br /&gt;
| 0x2CC&lt;br /&gt;
| 0x12A&lt;br /&gt;
|-&lt;br /&gt;
| angles&lt;br /&gt;
| 0x2CD&lt;br /&gt;
| 0x45&lt;br /&gt;
|-&lt;br /&gt;
| birthtime&lt;br /&gt;
| 0x2CE&lt;br /&gt;
| 0x81&lt;br /&gt;
|-&lt;br /&gt;
| script_linkname&lt;br /&gt;
| 0x2CF&lt;br /&gt;
| 0x39D&lt;br /&gt;
|-&lt;br /&gt;
| slidevelocity&lt;br /&gt;
| 0x2D0&lt;br /&gt;
| 0x3D0&lt;br /&gt;
|-&lt;br /&gt;
| owner&lt;br /&gt;
| &lt;br /&gt;
| 0x2ED&lt;br /&gt;
|}&lt;br /&gt;
&#039;&#039;&#039;Vehicle Fields&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot;|Field&lt;br /&gt;
! colspan=&amp;quot;1&amp;quot;|MW3&lt;br /&gt;
! colspan=&amp;quot;1&amp;quot;|AW&lt;br /&gt;
|-&lt;br /&gt;
! PS3 ID&lt;br /&gt;
! PS3 ID&lt;br /&gt;
|-&lt;br /&gt;
| veh_speed || 0x2FF || 0x4FC&lt;br /&gt;
|-&lt;br /&gt;
| veh_pathspeed || 0x300 || 0x4F9&lt;br /&gt;
|-&lt;br /&gt;
| veh_transmission || 0x301 || 0x4FF&lt;br /&gt;
|-&lt;br /&gt;
| veh_pathdir || 0x302 || 0x4F8&lt;br /&gt;
|-&lt;br /&gt;
| veh_pathtype || 0x303 || 0x4FA&lt;br /&gt;
|-&lt;br /&gt;
| veh_topspeed || 0x304 || 0x4FE&lt;br /&gt;
|-&lt;br /&gt;
| veh_brake || 0x305 || 0x4F2&lt;br /&gt;
|-&lt;br /&gt;
| veh_throttle || 0x306 || 0x4FD&lt;br /&gt;
|}&lt;br /&gt;
&#039;&#039;&#039;Hudelem Fields&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot;|Field&lt;br /&gt;
! colspan=&amp;quot;1&amp;quot;|MW3&lt;br /&gt;
! colspan=&amp;quot;1&amp;quot;|AW&lt;br /&gt;
|-&lt;br /&gt;
! PS3 ID&lt;br /&gt;
! PS3 ID&lt;br /&gt;
|-&lt;br /&gt;
| x&lt;br /&gt;
| 0x2E8&lt;br /&gt;
| 0x534&lt;br /&gt;
|-&lt;br /&gt;
| y&lt;br /&gt;
| 0x2E9&lt;br /&gt;
| 0x53C&lt;br /&gt;
|-&lt;br /&gt;
| z&lt;br /&gt;
| 0x2EA&lt;br /&gt;
| 0x53F&lt;br /&gt;
|-&lt;br /&gt;
| fontscale&lt;br /&gt;
| 0x2EB&lt;br /&gt;
| 0x190&lt;br /&gt;
|-&lt;br /&gt;
| font&lt;br /&gt;
| 0x2EC&lt;br /&gt;
| 0x18F&lt;br /&gt;
|-&lt;br /&gt;
| alignx&lt;br /&gt;
| 0x2ED&lt;br /&gt;
| 0x30&lt;br /&gt;
|-&lt;br /&gt;
| aligny&lt;br /&gt;
| 0x2EE&lt;br /&gt;
| 0x31&lt;br /&gt;
|-&lt;br /&gt;
| horzalign&lt;br /&gt;
| 0x2EF&lt;br /&gt;
| 0x1F8&lt;br /&gt;
|-&lt;br /&gt;
| vertalign&lt;br /&gt;
| 0x2F0&lt;br /&gt;
| 0x504&lt;br /&gt;
|-&lt;br /&gt;
| color&lt;br /&gt;
| 0x2F1&lt;br /&gt;
| 0xC9&lt;br /&gt;
|-&lt;br /&gt;
| alpha &lt;br /&gt;
| 0x2F2&lt;br /&gt;
| 0x3B&lt;br /&gt;
|-&lt;br /&gt;
| label &lt;br /&gt;
| 0x2F3&lt;br /&gt;
| 0x249&lt;br /&gt;
|-&lt;br /&gt;
| sort &lt;br /&gt;
| 0x2F4&lt;br /&gt;
| 0x3D9&lt;br /&gt;
|-&lt;br /&gt;
| foreground &lt;br /&gt;
| 0x2F5&lt;br /&gt;
| 0x19E&lt;br /&gt;
|-&lt;br /&gt;
| lowresbackground &lt;br /&gt;
| 0x2F6&lt;br /&gt;
| 0x26B&lt;br /&gt;
|-&lt;br /&gt;
| hidewhendead &lt;br /&gt;
| 0x2F7&lt;br /&gt;
| 0x1F0&lt;br /&gt;
|-&lt;br /&gt;
| hidewheninmenu &lt;br /&gt;
| 0x2F8&lt;br /&gt;
| 0x1F2&lt;br /&gt;
|-&lt;br /&gt;
| glowcolor &lt;br /&gt;
| 0x2FA&lt;br /&gt;
| 0x1C4&lt;br /&gt;
|-&lt;br /&gt;
| glowalpha &lt;br /&gt;
| 0x2FB&lt;br /&gt;
| 0x8C&lt;br /&gt;
|-&lt;br /&gt;
| archived &lt;br /&gt;
| 0x2FC&lt;br /&gt;
| 0x4C&lt;br /&gt;
|-&lt;br /&gt;
| showinkillcam&lt;br /&gt;
|&lt;br /&gt;
| 0x3C8&lt;br /&gt;
|-&lt;br /&gt;
| hidein3rdperson &lt;br /&gt;
| 0x2FD&lt;br /&gt;
| 0x1EF&lt;br /&gt;
|-&lt;br /&gt;
| positioninworld&lt;br /&gt;
|&lt;br /&gt;
| 0x333&lt;br /&gt;
|-&lt;br /&gt;
| hidewhenindemo &lt;br /&gt;
| 0x2FE&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| enablehudlighting&lt;br /&gt;
|&lt;br /&gt;
| 0x140&lt;br /&gt;
|}&lt;br /&gt;
&#039;&#039;&#039;Entity Array Fields&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!rowspan=&amp;quot;2&amp;quot;|Field&lt;br /&gt;
!colspan=&amp;quot;1&amp;quot;|MW3&lt;br /&gt;
!colspan=&amp;quot;1&amp;quot;|AW&lt;br /&gt;
|-&lt;br /&gt;
!PS3 ID&lt;br /&gt;
!PS3 ID&lt;br /&gt;
|-&lt;br /&gt;
| targetname&lt;br /&gt;
| 0x2C9&lt;br /&gt;
| 0x4AB&lt;br /&gt;
|-&lt;br /&gt;
| target&lt;br /&gt;
| 0x2C8&lt;br /&gt;
| 0x4A9&lt;br /&gt;
|-&lt;br /&gt;
| script_linkname&lt;br /&gt;
| 0x2CF&lt;br /&gt;
| 0x39D&lt;br /&gt;
|-&lt;br /&gt;
| script_noteworthy&lt;br /&gt;
| 0x307&lt;br /&gt;
| 0x39F&lt;br /&gt;
|-&lt;br /&gt;
| origin&lt;br /&gt;
| 0x2C5&lt;br /&gt;
| 0x2EA&lt;br /&gt;
|-&lt;br /&gt;
| angles&lt;br /&gt;
| 0x2CD&lt;br /&gt;
| 0x45&lt;br /&gt;
|-&lt;br /&gt;
| speed&lt;br /&gt;
| 0x308&lt;br /&gt;
| 0x3E7&lt;br /&gt;
|-&lt;br /&gt;
| lookahead&lt;br /&gt;
|  0x309&lt;br /&gt;
| 0x25F&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Therifboy</name></author>
	</entry>
	<entry>
		<id>https://codresearch.dev/index.php?title=ScriptFile_Asset&amp;diff=583</id>
		<title>ScriptFile Asset</title>
		<link rel="alternate" type="text/html" href="https://codresearch.dev/index.php?title=ScriptFile_Asset&amp;diff=583"/>
		<updated>2014-11-08T19:30:23Z</updated>

		<summary type="html">&lt;p&gt;Therifboy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
[[Category:Assets]]&lt;br /&gt;
[[Category:MW3]]&lt;br /&gt;
[[Category:Ghosts]]&lt;br /&gt;
The scriptfile asset is used on Modern Warfare 3, Ghosts, and Advanced Warfare. It is Infinity Ward&#039;s attempt at protecting their game scripts from being modified. Compared to Treyarch&#039;s scriptparsetree, the scriptfile gives away less information on identifying which game script file it originated from. All unnecessary strings have been removed and file names have even been renamed as number id&#039;s.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
struct ScriptFile&lt;br /&gt;
{&lt;br /&gt;
  const char *name;&lt;br /&gt;
  int deflatedLen;&lt;br /&gt;
  int inflatedLen;&lt;br /&gt;
  int codeLen;&lt;br /&gt;
  char *data;&lt;br /&gt;
  char *code;&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
=== Data Section ===&lt;br /&gt;
The data section is a zlib compressed section in which the compressed size is equal to deflatedSize and it&#039;s uncompressed size is equal to inflatedSize.&lt;br /&gt;
&lt;br /&gt;
This section of data is not needed during runtime. Before being executed, the linker runs through the code once and links the data and code section together so that all programs can be ran as one. It contains strings and function call info.&lt;br /&gt;
&lt;br /&gt;
In order to be linked correctly, the code and data section must be read synchronously (e.g. when reading the OP_GetString opcode, the data pointer must be pointing to the string ready to be loaded). The linker does this by incrementing the data pointer each time it reads an opcode that uses it.&lt;br /&gt;
&lt;br /&gt;
At the beginning of each function, the linker loads a 32 bit value, which is the length of the function in the program section. Then it loads a 16 bit value which is the function id. If the id is equal to zero, then it will load a string after it, which is the name of the function. After this, the opcodes may begin to use the data section. The opcodes that use the data section are OP_GetAnimTree, OP_GetString, OP_GetIString, OP_GetAnimation, OP_GetFunction, OP_EvalLevelFieldVariable, OP_EvalAnimFieldVariable, OP_EvalSelfFieldVariable, OP_EvalFieldVariable, OP_EvalLevelFieldVariableRef, OP_EvalAnimFieldVariableRef, OP_EvalSelfFieldVariableRef, OP_EvalFieldVariableRef, OP_ClearFieldVariable, OP_SetLevelFieldVariableField, OP_SetSelfFieldVariableField, all the external call opcodes, and OP_endswitch.&lt;br /&gt;
&lt;br /&gt;
=== Code Section ===&lt;br /&gt;
The code section is the actual compiled game script code. &lt;br /&gt;
== Operation Codes ==&lt;br /&gt;
=== Modern Warfare 3 ===&lt;br /&gt;
==== XBOX &amp;amp; PS3 ====&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#define OP_End					0&lt;br /&gt;
#define OP_Return				1&lt;br /&gt;
#define OP_GetUndefined			2&lt;br /&gt;
#define OP_GetZero				3&lt;br /&gt;
#define OP_GetByte				4&lt;br /&gt;
#define OP_GetAnimTree				5&lt;br /&gt;
#define OP_GetNegByte			6&lt;br /&gt;
#define OP_GetUnsignedShort		7&lt;br /&gt;
#define OP_GetNegUnsignedShort	8&lt;br /&gt;
#define OP_GetInteger			9&lt;br /&gt;
#define OP_GetBuiltinFunction			0xA&lt;br /&gt;
#define OP_GetBuiltinMethod			0xB&lt;br /&gt;
#define OP_GetFloat				0xC&lt;br /&gt;
#define OP_GetString			0xD&lt;br /&gt;
#define OP_GetIString			0xE&lt;br /&gt;
#define OP_GetVector			0xF&lt;br /&gt;
#define OP_GetLevelObject		0x10&lt;br /&gt;
#define OP_GetAnimObject		0x11&lt;br /&gt;
#define OP_GetSelf				0x12&lt;br /&gt;
#define OP_GetThread			0x13&lt;br /&gt;
#define OP_GetLevel				0x14&lt;br /&gt;
#define OP_GetGame				0x15&lt;br /&gt;
#define OP_GetAnim				0x16&lt;br /&gt;
#define OP_GetAnimation			0x17&lt;br /&gt;
#define OP_GetGameRef			0x18&lt;br /&gt;
#define OP_GetMethod			0x19&lt;br /&gt;
#define OP_GetFunction			0x1A&lt;br /&gt;
#define OP_CreateLocalVariable	0x1B&lt;br /&gt;
#define OP_RemoveLocalVariables	0x1C&lt;br /&gt;
#define OP_EvalLocalVariableCached0		0x1D&lt;br /&gt;
#define OP_EvalLocalVariableCached1		0x1E&lt;br /&gt;
#define OP_EvalLocalVariableCached2		0x1F&lt;br /&gt;
#define OP_EvalLocalVariableCached3		0x20&lt;br /&gt;
#define OP_EvalLocalVariableCached4		0x21&lt;br /&gt;
#define OP_EvalLocalVariableCached5		0x22&lt;br /&gt;
#define OP_EvalLocalVariableCached		0x23&lt;br /&gt;
#define OP_EvalLocalArrayCached			0x24&lt;br /&gt;
#define OP_EvalArray					0x25&lt;br /&gt;
#define OP_EvalLocalArrayRefCached0		0x26&lt;br /&gt;
 #define OP_opcode39       				0x27&lt;br /&gt;
#define OP_EvalLocalArrayRefCached		0x28&lt;br /&gt;
#define OP_EvalArrayRef				0x29&lt;br /&gt;
#define OP_ClearArray				0x2A&lt;br /&gt;
#define OP_EmptyArray				0x2B&lt;br /&gt;
 #define OP_opcode44				0x2C&lt;br /&gt;
#define OP_GetSelfObject			0x2D&lt;br /&gt;
#define OP_EvalLevelFieldVariable	0x2E&lt;br /&gt;
#define OP_EvalAnimFieldVariable	0x2F&lt;br /&gt;
#define OP_EvalSelfFieldVariable	0x30&lt;br /&gt;
#define OP_EvalFieldVariable		0x31&lt;br /&gt;
#define OP_EvalLevelFieldVariableRef 	0x32&lt;br /&gt;
#define OP_EvalAnimFieldVariableRef		0x33&lt;br /&gt;
#define OP_EvalSelfFieldVariableRef		0x34&lt;br /&gt;
#define OP_EvalFieldVariableRef			0x35&lt;br /&gt;
#define OP_ClearFieldVariable			0x36&lt;br /&gt;
#define OP_SafeCreateVariableFieldCached	0x37&lt;br /&gt;
#define OP_SafeSetVariableFieldCached0		0x38&lt;br /&gt;
#define OP_SafeSetVariableFieldCached		0x39&lt;br /&gt;
#define OP_SafeSetWaittillVariableFieldCached	0x3A&lt;br /&gt;
#define OP_clearparams				0x3B&lt;br /&gt;
#define OP_checkclearparams			0x3C&lt;br /&gt;
#define OP_EvalLocalVariableRefCached0				0x3D&lt;br /&gt;
// #define OP_opcode62				0x3E	// nop&lt;br /&gt;
#define OP_EvalLocalVariableRefCached	0x3F&lt;br /&gt;
#define OP_SetLevelFieldVariableField	0x40&lt;br /&gt;
#define OP_SetVariableField		0x41&lt;br /&gt;
// #define OP_opcode66			0x42	// nop&lt;br /&gt;
#define OP_SetAnimFieldVariableField	0x43&lt;br /&gt;
#define OP_SetSelfFieldVariableField	0x44&lt;br /&gt;
#define OP_SetLocalVariableFieldCached0		0x45&lt;br /&gt;
#define OP_CreateLocalVariable2		0x46&lt;br /&gt;
#define OP_SetLocalVariableFieldCached		0x47&lt;br /&gt;
 #define OP_opcode72		0x48&lt;br /&gt;
 #define OP_opcode73		0x49&lt;br /&gt;
#define OP_CallBuiltin0		0x4A&lt;br /&gt;
#define OP_CallBuiltin1		0x4B&lt;br /&gt;
#define OP_CallBuiltin2		0x4C&lt;br /&gt;
#define OP_CallBuiltin3		0x4D&lt;br /&gt;
#define OP_CallBuiltin4		0x4E&lt;br /&gt;
#define OP_CallBuiltin5		0x4F&lt;br /&gt;
#define OP_CallBuiltin		0x50&lt;br /&gt;
#define OP_CallBuiltinMethod0	0x51&lt;br /&gt;
#define OP_CallBuiltinMethod1	0x52&lt;br /&gt;
#define OP_CallBuiltinMethod2	0x53&lt;br /&gt;
#define OP_CallBuiltinMethod3	0x54&lt;br /&gt;
#define OP_CallBuiltinMethod4	0x55&lt;br /&gt;
#define OP_CallBuiltinMethod5	0x56&lt;br /&gt;
#define OP_CallBuiltinMethod	0x57&lt;br /&gt;
#define OP_wait					0x58&lt;br /&gt;
#define OP_waittillFrameEnd		0x59&lt;br /&gt;
#define OP_PreScriptCall		0x5A&lt;br /&gt;
#define OP_ScriptFunctionCall2	0x5B&lt;br /&gt;
#define OP_ScriptFunctionCall	0x5C&lt;br /&gt;
#define OP_ScriptMethodCall	0x5D&lt;br /&gt;
#define OP_ScriptThreadCall			0x5E&lt;br /&gt;
#define OP_ScriptThreadCall2	0x5F&lt;br /&gt;
#define OP_ScriptMethodThreadCall			0x60&lt;br /&gt;
#define OP_opcode97			0x61&lt;br /&gt;
#define OP_ScriptFunctionFarCall2		0x62&lt;br /&gt;
#define OP_ScriptFunctionFarCall		0x63&lt;br /&gt;
#define OP_ScriptMethodFarCall	0x64&lt;br /&gt;
#define OP_ScriptThreadFarCall				0x65&lt;br /&gt;
#define OP_opcode102		0x66&lt;br /&gt;
#define OP_ScriptMethodThreadFarCall			0x67&lt;br /&gt;
#define OP_opcode104			0x68&lt;br /&gt;
#define OP_ScriptFunctionCallPointer			0x69&lt;br /&gt;
#define OP_ScriptMethodCallPointer			0x6A&lt;br /&gt;
#define OP_ScriptThreadCallPointer			0x6B&lt;br /&gt;
 #define OP_opcode108			0x6C&lt;br /&gt;
#define OP_ScriptMethodThreadCallPointer			0x6D&lt;br /&gt;
 #define OP_opcode110			0x6E&lt;br /&gt;
 #define OP_opcode111			0x6F&lt;br /&gt;
 #define OP_opcode112			0x70&lt;br /&gt;
#define OP_DecTop			0x71&lt;br /&gt;
#define OP_CastFieldObject			0x72&lt;br /&gt;
#define OP_EvalLocalVariableObjectCached			0x73&lt;br /&gt;
#define OP_CastBool			0x74&lt;br /&gt;
#define OP_BoolNot				0x75&lt;br /&gt;
#define OP_BoolComplement		0x76&lt;br /&gt;
#define OP_JumpOnFalse			0x77&lt;br /&gt;
#define OP_JumpOnTrue			0x78&lt;br /&gt;
#define OP_JumpOnFalseExpr		0x79&lt;br /&gt;
#define OP_JumpOnTrueExpr		0x7A&lt;br /&gt;
#define OP_jump				0x7B&lt;br /&gt;
#define OP_jumpback			0x7C&lt;br /&gt;
#define OP_inc				0x7D&lt;br /&gt;
#define OP_dec				0x7E&lt;br /&gt;
#define OP_bit_or			0x7F&lt;br /&gt;
#define OP_bit_ex_or		0x80&lt;br /&gt;
#define OP_bit_and			0x81&lt;br /&gt;
#define OP_equality			0x82&lt;br /&gt;
#define OP_inequality		0x83&lt;br /&gt;
#define OP_less				0x84&lt;br /&gt;
#define OP_greater			0x85&lt;br /&gt;
#define OP_less_equal		0x86&lt;br /&gt;
#define OP_greater_equal	0x87&lt;br /&gt;
#define OP_shift_left		0x88&lt;br /&gt;
#define OP_shift_right		0x89&lt;br /&gt;
#define OP_plus				0x8A&lt;br /&gt;
#define OP_minus			0x8B&lt;br /&gt;
#define OP_multiply			0x8C&lt;br /&gt;
#define OP_divide			0x8F&lt;br /&gt;
#define OP_mod				0x8E&lt;br /&gt;
#define OP_size				0x8F&lt;br /&gt;
#define OP_waittillmatch		0x90&lt;br /&gt;
#define OP_NOP				0x91&lt;br /&gt;
#define OP_waittill			0x92&lt;br /&gt;
#define OP_notify			0x93&lt;br /&gt;
#define OP_endon			0x94&lt;br /&gt;
#define OP_voidCodepos		0x95&lt;br /&gt;
#define OP_switch			0x96&lt;br /&gt;
#define OP_endswitch		0x97&lt;br /&gt;
#define OP_vector			0x98&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== PC ====&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#define OP_End	0x0&lt;br /&gt;
#define OP_Return	0x1&lt;br /&gt;
#define OP_GetByte	0x2&lt;br /&gt;
#define OP_GetNegByte	0x3&lt;br /&gt;
#define OP_GetUnsignedShort	0x4&lt;br /&gt;
#define OP_GetNegUnsignedShort	0x5&lt;br /&gt;
#define OP_GetInteger	0x6&lt;br /&gt;
#define OP_GetBuiltinFunction	0x7&lt;br /&gt;
#define OP_GetBuiltinMethod	0x8&lt;br /&gt;
#define OP_GetFloat	0x9&lt;br /&gt;
#define OP_GetString	0xA&lt;br /&gt;
#define OP_GetUndefined	0xB&lt;br /&gt;
#define OP_GetZero	0xC&lt;br /&gt;
#define OP_waittillFrameEnd		0xD&lt;br /&gt;
#define OP_CreateLocalVariable	0xE&lt;br /&gt;
#define OP_RemoveLocalVariables	0xF&lt;br /&gt;
#define OP_EvalLocalVariableCached0	0x10&lt;br /&gt;
#define OP_EvalLocalVariableCached1	0x11&lt;br /&gt;
#define OP_EvalLocalVariableCached2	0x12&lt;br /&gt;
#define OP_EvalLocalVariableCached3	0x13&lt;br /&gt;
#define OP_EvalLocalVariableCached4	0x14&lt;br /&gt;
#define OP_EvalLocalVariableCached5	0x15&lt;br /&gt;
#define OP_EvalLocalVariableCached	0x16&lt;br /&gt;
#define OP_EvalLocalArrayCached	0x17&lt;br /&gt;
#define OP_EvalArray	0x18&lt;br /&gt;
#define OP_opcode39	0x19&lt;br /&gt;
#define OP_EvalLocalArrayRefCached0	0x1A&lt;br /&gt;
#define OP_EvalLocalArrayRefCached	0x1B&lt;br /&gt;
#define OP_EvalArrayRef	0x1C&lt;br /&gt;
#define OP_ClearArray	0x1D&lt;br /&gt;
#define OP_EmptyArray	0x1E&lt;br /&gt;
 #define OP_opcode44	0x1F&lt;br /&gt;
#define OP_PreScriptCall	0x20&lt;br /&gt;
#define OP_ScriptFunctionCall2	0x21&lt;br /&gt;
#define OP_ScriptFunctionCall	0x22&lt;br /&gt;
#define OP_ScriptMethodCall	0x23&lt;br /&gt;
#define OP_ScriptThreadCall	0x24&lt;br /&gt;
#define OP_ScriptThreadCall2	0x25&lt;br /&gt;
#define OP_ScriptMethodThreadCall	0x26&lt;br /&gt;
 #define OP_opcode97	0x27&lt;br /&gt;
#define OP_ScriptFunctionFarCall2	0x28&lt;br /&gt;
#define OP_ScriptFunctionFarCall	0x29&lt;br /&gt;
#define OP_ScriptMethodFarCall	0x2A&lt;br /&gt;
#define OP_ScriptThreadFarCall	0x2B&lt;br /&gt;
 #define OP_opcode102	0x2C&lt;br /&gt;
#define OP_ScriptMethodThreadFarCall	0x2D&lt;br /&gt;
 #define OP_opcode104	0x2E&lt;br /&gt;
#define OP_ScriptFunctionCallPointer	0x2F&lt;br /&gt;
#define OP_ScriptMethodCallPointer		0x30&lt;br /&gt;
#define OP_ScriptThreadCallPointer		0x31&lt;br /&gt;
 #define OP_opcode108					0x32&lt;br /&gt;
#define OP_ScriptMethodThreadCallPointer	0x33&lt;br /&gt;
#define OP_opcode110	0x34&lt;br /&gt;
#define OP_opcode111	0x35&lt;br /&gt;
#define OP_opcode112	0x36&lt;br /&gt;
#define OP_GetIString	0x37&lt;br /&gt;
#define OP_GetVector	0x38&lt;br /&gt;
#define OP_GetLevelObject	0x39&lt;br /&gt;
#define OP_GetAnimObject	0x3A&lt;br /&gt;
#define OP_GetSelf	0x3B&lt;br /&gt;
#define OP_GetThread	0x3C&lt;br /&gt;
#define OP_GetLevel	0x3D&lt;br /&gt;
#define OP_GetGame	0x3E&lt;br /&gt;
#define OP_GetAnim	0x3F&lt;br /&gt;
#define OP_GetAnimation	0x40&lt;br /&gt;
#define OP_GetGameRef	0x41&lt;br /&gt;
#define OP_inc	0x42&lt;br /&gt;
#define OP_dec	0x43&lt;br /&gt;
#define OP_bit_or	0x44&lt;br /&gt;
#define OP_JumpOnFalseExpr	0x45&lt;br /&gt;
#define OP_bit_ex_or	0x46&lt;br /&gt;
#define OP_bit_and	0x47&lt;br /&gt;
#define OP_equality	0x48&lt;br /&gt;
#define OP_inequality	0x49&lt;br /&gt;
#define OP_less	0x4A&lt;br /&gt;
#define OP_greater	0x4B&lt;br /&gt;
#define OP_JumpOnTrueExpr	0x4C&lt;br /&gt;
#define OP_less_equal	0x4D&lt;br /&gt;
#define OP_jumpback	0x4E&lt;br /&gt;
#define OP_NOP		0x4F&lt;br /&gt;
#define OP_waittill	0x50&lt;br /&gt;
#define OP_notify	0x51&lt;br /&gt;
#define OP_endon	0x52&lt;br /&gt;
#define OP_voidCodepos	0x53&lt;br /&gt;
#define OP_switch	0x54&lt;br /&gt;
#define OP_endswitch	0x55&lt;br /&gt;
#define OP_vector	0x56&lt;br /&gt;
#define OP_JumpOnFalse	0x57&lt;br /&gt;
#define OP_greater_equal	0x58&lt;br /&gt;
#define OP_shift_left	0x59&lt;br /&gt;
#define OP_shift_right	0x5A&lt;br /&gt;
#define OP_plus	0x5B&lt;br /&gt;
#define OP_jump	0x5C&lt;br /&gt;
#define OP_minus	0x5D&lt;br /&gt;
#define OP_multiply	0x5E&lt;br /&gt;
#define OP_divide	0x5F&lt;br /&gt;
#define OP_mod	0x60&lt;br /&gt;
#define OP_JumpOnTrue	0x61&lt;br /&gt;
#define OP_size	0x62&lt;br /&gt;
#define OP_waittillmatch	0x63&lt;br /&gt;
#define OP_GetMethod	0x64&lt;br /&gt;
#define OP_GetFunction	0x65&lt;br /&gt;
#define OP_GetSelfObject	0x66&lt;br /&gt;
#define OP_EvalLevelFieldVariable	0x67&lt;br /&gt;
#define OP_EvalAnimFieldVariable	0x68&lt;br /&gt;
#define OP_EvalSelfFieldVariable	0x69&lt;br /&gt;
#define OP_EvalFieldVariable	0x6A&lt;br /&gt;
#define OP_EvalLevelFieldVariableRef	0x6B&lt;br /&gt;
#define OP_EvalAnimFieldVariableRef	0x6C&lt;br /&gt;
#define OP_EvalSelfFieldVariableRef	0x6D&lt;br /&gt;
#define OP_EvalFieldVariableRef	0x6E&lt;br /&gt;
#define OP_ClearFieldVariable	0x6F&lt;br /&gt;
#define OP_SafeCreateVariableFieldCached	0x70&lt;br /&gt;
#define OP_SafeSetVariableFieldCached0	0x71&lt;br /&gt;
#define OP_SafeSetVariableFieldCached		0x72&lt;br /&gt;
#define OP_SafeSetWaittillVariableFieldCached	0x73&lt;br /&gt;
#define OP_GetAnimTree	0x74&lt;br /&gt;
#define OP_clearparams	0x75&lt;br /&gt;
#define OP_checkclearparams				0x76&lt;br /&gt;
#define OP_EvalLocalVariableRefCached0	0x77&lt;br /&gt;
	// nop&lt;br /&gt;
#define OP_EvalLocalVariableRefCached	0x79&lt;br /&gt;
#define OP_SetLevelFieldVariableField	0x7A&lt;br /&gt;
#define OP_SetVariableField				0x7B&lt;br /&gt;
	// nop&lt;br /&gt;
#define OP_SetAnimFieldVariableField	0x7D&lt;br /&gt;
#define OP_SetSelfFieldVariableField	0x7E&lt;br /&gt;
#define OP_SetLocalVariableFieldCached0	0x7F&lt;br /&gt;
#define OP_CreateLocalVariable2		0x80&lt;br /&gt;
#define OP_SetLocalVariableFieldCached	0x81&lt;br /&gt;
 #define OP_opcode72		0x82&lt;br /&gt;
 #define OP_opcode73		0x83&lt;br /&gt;
#define OP_CallBuiltin0	0x84&lt;br /&gt;
#define OP_CallBuiltin1	0x85&lt;br /&gt;
#define OP_CallBuiltin2	0x86&lt;br /&gt;
#define OP_CallBuiltin3	0x87&lt;br /&gt;
#define OP_CallBuiltin4	0x88&lt;br /&gt;
#define OP_CallBuiltin5	0x89&lt;br /&gt;
#define OP_CallBuiltin	0x8A&lt;br /&gt;
#define OP_CallBuiltinMethod0	0x8B&lt;br /&gt;
#define OP_CallBuiltinMethod1	0x8C&lt;br /&gt;
#define OP_CallBuiltinMethod2	0x8D&lt;br /&gt;
#define OP_CallBuiltinMethod3	0x8E&lt;br /&gt;
#define OP_CallBuiltinMethod4	0x8F&lt;br /&gt;
#define OP_CallBuiltinMethod5	0x90&lt;br /&gt;
#define OP_CallBuiltinMethod	0x91&lt;br /&gt;
#define OP_wait		0x92&lt;br /&gt;
#define OP_DecTop	0x93&lt;br /&gt;
#define OP_CastFieldObject	0x94&lt;br /&gt;
#define OP_EvalLocalVariableObjectCached 0x95&lt;br /&gt;
#define OP_CastBool	0x96&lt;br /&gt;
#define OP_BoolNot	0x97&lt;br /&gt;
#define OP_BoolComplement 0x98&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Ghosts ===&lt;br /&gt;
The opcodes for Ghosts do the exact same thing as the Modern Warfare 3 opcodes, only their values seem to be scrambled in some way.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#define OP_CastFieldObject			0x1D&lt;br /&gt;
#define OP_SetLocalVariableFieldCached	0x1E&lt;br /&gt;
#define OP_plus				0x1F&lt;br /&gt;
#define OP_RemoveLocalVariables		0x20&lt;br /&gt;
#define OP_EvalSelfFieldVariableRef	0x21&lt;br /&gt;
#define OP_opcode104	0x22&lt;br /&gt;
#define OP_GetGameRef			0x23&lt;br /&gt;
#define OP_EvalAnimFieldVariable	0x24&lt;br /&gt;
#define OP_EvalLevelFieldVariableRef	0x25&lt;br /&gt;
#define OP_GetThread		0x26&lt;br /&gt;
#define OP_greater		0x27&lt;br /&gt;
#define OP_waittillmatch	0x28&lt;br /&gt;
#define OP_shift_right		0x29&lt;br /&gt;
#define OP_dec			0x2A&lt;br /&gt;
#define OP_JumpOnTrue	0x2B&lt;br /&gt;
#define OP_bit_or	0x2C&lt;br /&gt;
#define OP_equality	0x2D&lt;br /&gt;
#define OP_opcode73	0x2E&lt;br /&gt;
#define OP_notify	0x2F&lt;br /&gt;
#define OP_GetVector	0x30&lt;br /&gt;
#define OP_opcode110	0x31&lt;br /&gt;
#define OP_voidCodepos	0x32&lt;br /&gt;
#define OP_GetByte	0x33&lt;br /&gt;
#define OP_ScriptMethodThreadFarCall		0x34&lt;br /&gt;
#define OP_SetSelfFieldVariableField	0x35&lt;br /&gt;
#define OP_JumpOnFalseExpr		0x36&lt;br /&gt;
#define OP_GetUndefined		0x37&lt;br /&gt;
#define OP_jumpback		0x38&lt;br /&gt;
#define OP_JumpOnTrueExpr	0x39&lt;br /&gt;
#define OP_CallBuiltin0		0x3A&lt;br /&gt;
#define OP_CallBuiltin1		0x3B&lt;br /&gt;
#define OP_CallBuiltin2		0x3C&lt;br /&gt;
#define OP_CallBuiltin3		0x3D&lt;br /&gt;
#define OP_CallBuiltin4		0x3E&lt;br /&gt;
#define OP_CallBuiltin5		0x3F&lt;br /&gt;
#define OP_CallBuiltin		0x40&lt;br /&gt;
#define OP_SetLocalVariableFieldCached0		0x41&lt;br /&gt;
#define OP_ClearFieldVariable	0x42&lt;br /&gt;
#define OP_GetLevel		0x43&lt;br /&gt;
#define OP_size			0x44&lt;br /&gt;
#define OP_SafeSetWaittillVariableFieldCached	0x45&lt;br /&gt;
#define OP_ScriptThreadCall			0x46&lt;br /&gt;
#define OP_opcode44			0x47&lt;br /&gt;
#define OP_endon			0x48&lt;br /&gt;
#define OP_EvalFieldVariable		0x49&lt;br /&gt;
#define OP_shift_left			0x4A&lt;br /&gt;
#define OP_EvalLocalArrayRefCached0	0x4B&lt;br /&gt;
#define OP_Return			0x4C&lt;br /&gt;
#define OP_CreateLocalVariable		0x4D&lt;br /&gt;
#define OP_SafeSetVariableFieldCached0	0x4E&lt;br /&gt;
#define OP_GetBuiltinFunction		0x4F&lt;br /&gt;
#define OP_ScriptMethodCall	0x50&lt;br /&gt;
#define OP_opcode112			0x51&lt;br /&gt;
#define OP_ScriptThreadCall2		0x52&lt;br /&gt;
#define OP_GetSelfObject		0x53&lt;br /&gt;
#define OP_GetGame			0x54&lt;br /&gt;
#define OP_SetLevelFieldVariableField	0x55&lt;br /&gt;
#define OP_EvalArray			0x56&lt;br /&gt;
#define OP_GetSelf			0x57&lt;br /&gt;
#define OP_End				0x58&lt;br /&gt;
#define OP_EvalSelfFieldVariable	0x59&lt;br /&gt;
#define OP_less_equal			0x5A&lt;br /&gt;
#define OP_EvalLocalVariableCached0	0x5B&lt;br /&gt;
#define OP_EvalLocalVariableCached1	0x5C&lt;br /&gt;
#define OP_EvalLocalVariableCached2	0x5D&lt;br /&gt;
#define OP_EvalLocalVariableCached3	0x5E&lt;br /&gt;
#define OP_EvalLocalVariableCached4	0x5F&lt;br /&gt;
#define OP_EvalLocalVariableCached5	0x60&lt;br /&gt;
#define OP_EvalLocalVariableCached	0x61&lt;br /&gt;
#define OP_opcode39		0x62&lt;br /&gt;
#define OP_opcode108		0x63&lt;br /&gt;
#define OP_EvalLocalVariableObjectCached		0x64&lt;br /&gt;
#define OP_ScriptMethodThreadCall	0x65&lt;br /&gt;
#define OP_GetInteger		0x66&lt;br /&gt;
#define OP_ScriptMethodCallPointer		0x67&lt;br /&gt;
#define OP_checkclearparams	0x68&lt;br /&gt;
#define OP_SetAnimFieldVariableField	0x69&lt;br /&gt;
// nop&lt;br /&gt;
#define OP_minus  0x6B&lt;br /&gt;
#define OP_ScriptFunctionCall2 0x6C&lt;br /&gt;
#define OP_GetNegUnsignedShort 0x6D&lt;br /&gt;
#define OP_GetNegByte		0x6E&lt;br /&gt;
#define OP_SafeCreateVariableFieldCached	0x6F&lt;br /&gt;
#define OP_greater_equal	0x70&lt;br /&gt;
#define OP_vector		0x71&lt;br /&gt;
#define OP_GetBuiltinMethod	0x72&lt;br /&gt;
#define OP_endswitch	0x73&lt;br /&gt;
#define OP_ClearArray	0x74&lt;br /&gt;
#define OP_DecTop	0x75&lt;br /&gt;
#define OP_CastBool	0x76&lt;br /&gt;
#define OP_EvalArrayRef	0x77&lt;br /&gt;
#define OP_CreateLocalVariable2		0x78&lt;br /&gt;
#define OP_GetZero			0x79&lt;br /&gt;
#define OP_wait				0x7A&lt;br /&gt;
#define OP_waittill			0x7B&lt;br /&gt;
#define OP_GetIString			0x7C&lt;br /&gt;
#define OP_ScriptFunctionFarCall	0x7D&lt;br /&gt;
#define OP_GetAnimObject		0x7E&lt;br /&gt;
#define OP_GetAnimTree			0x7F&lt;br /&gt;
#define OP_EvalLocalArrayCached		0x80&lt;br /&gt;
#define OP_mod				0x81&lt;br /&gt;
#define OP_ScriptThreadFarCall		0x82&lt;br /&gt;
#define OP_GetUnsignedShort		0x83&lt;br /&gt;
#define OP_clearparams		0x84&lt;br /&gt;
#define OP_ScriptMethodThreadCallPointer		0x85&lt;br /&gt;
#define OP_ScriptFunctionCallPointer		0x86&lt;br /&gt;
#define OP_EmptyArray		0x87&lt;br /&gt;
#define OP_SafeSetVariableFieldCached	0x88&lt;br /&gt;
// nop&lt;br /&gt;
#define OP_EvalFieldVariableRef		0x8A&lt;br /&gt;
#define OP_opcode97	0x8B&lt;br /&gt;
// nop&lt;br /&gt;
#define OP_GetFloat			0x8D&lt;br /&gt;
#define OP_EvalLocalVariableRefCached	0x8E&lt;br /&gt;
#define OP_JumpOnFalse			0x8F&lt;br /&gt;
#define OP_BoolComplement		0x90&lt;br /&gt;
#define OP_ScriptThreadCallPointer			0x91&lt;br /&gt;
#define OP_ScriptFunctionFarCall2	0x92&lt;br /&gt;
#define OP_less				0x93&lt;br /&gt;
#define OP_BoolNot			0x94&lt;br /&gt;
#define OP_waittillFrameEnd		0x95&lt;br /&gt;
#define OP_GetString			0x96&lt;br /&gt;
#define OP_EvalLevelFieldVariable	0x97&lt;br /&gt;
#define OP_GetLevelObject	0x98&lt;br /&gt;
#define OP_inc			0x99&lt;br /&gt;
#define OP_CallBuiltinMethod0	0x9A&lt;br /&gt;
#define OP_CallBuiltinMethod1	0x9B&lt;br /&gt;
#define OP_CallBuiltinMethod2	0x9C&lt;br /&gt;
#define OP_CallBuiltinMethod3	0x9D&lt;br /&gt;
#define OP_CallBuiltinMethod4	0x9E&lt;br /&gt;
#define OP_CallBuiltinMethod5	0x9F&lt;br /&gt;
#define OP_CallBuiltinMethod	0xA0&lt;br /&gt;
#define OP_GetAnim		0xA1&lt;br /&gt;
#define OP_switch		0xA2&lt;br /&gt;
#define OP_SetVariableField	0xA3&lt;br /&gt;
#define OP_divide		0xA4&lt;br /&gt;
#define OP_GetMethod		0xA5&lt;br /&gt;
#define OP_opcode102	0xA6&lt;br /&gt;
#define OP_multiply			0xA7&lt;br /&gt;
#define OP_opcode72			0xA8&lt;br /&gt;
#define OP_EvalAnimFieldVariableRef	0xA9&lt;br /&gt;
#define OP_EvalLocalArrayRefCached	0xAA&lt;br /&gt;
#define OP_EvalLocalVariableRefCached0	0xAB&lt;br /&gt;
#define OP_bit_and			0xAC&lt;br /&gt;
#define OP_GetAnimation			0xAD&lt;br /&gt;
#define OP_GetFunction			0xAE&lt;br /&gt;
#define OP_opcode111			0xAF&lt;br /&gt;
#define OP_jump				0xB0&lt;br /&gt;
#define OP_PreScriptCall		0xB1&lt;br /&gt;
#define OP_ScriptMethodFarCall	0xB2&lt;br /&gt;
#define OP_inequality		0xB3&lt;br /&gt;
#define OP_ScriptFunctionCall	0xB4&lt;br /&gt;
#define OP_bit_ex_or		0xB5&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Method List ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!rowspan=&amp;quot;2&amp;quot;|Method&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|MW3&lt;br /&gt;
|-&lt;br /&gt;
!PC ID&lt;br /&gt;
!PS3/XBOX ID&lt;br /&gt;
&amp;lt;!-- builtin --&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|attach&lt;br /&gt;
|0x8017&lt;br /&gt;
|0x8000&lt;br /&gt;
|-&lt;br /&gt;
|attachshieldmodel&lt;br /&gt;
|0x8018&lt;br /&gt;
|0x8001&lt;br /&gt;
|-&lt;br /&gt;
|detach&lt;br /&gt;
|0x8024&lt;br /&gt;
|0x8002&lt;br /&gt;
|-&lt;br /&gt;
|detachshieldmodel&lt;br /&gt;
|0x8025&lt;br /&gt;
|0x8003&lt;br /&gt;
|-&lt;br /&gt;
|moveshieldmodel&lt;br /&gt;
|0x8026&lt;br /&gt;
|0x8004&lt;br /&gt;
|-&lt;br /&gt;
|detachall&lt;br /&gt;
|0x8027&lt;br /&gt;
|0x8005&lt;br /&gt;
|-&lt;br /&gt;
|getattachsize&lt;br /&gt;
|0x8028&lt;br /&gt;
|0x8006&lt;br /&gt;
|-&lt;br /&gt;
|getattachmodelname&lt;br /&gt;
|0x8029&lt;br /&gt;
|0x8007&lt;br /&gt;
|-&lt;br /&gt;
|getattachtagname&lt;br /&gt;
|0x802a&lt;br /&gt;
|0x8008&lt;br /&gt;
|-&lt;br /&gt;
|getattachignorecollision&lt;br /&gt;
|0x8043&lt;br /&gt;
|0x8009&lt;br /&gt;
|-&lt;br /&gt;
|hidepart&lt;br /&gt;
|0x8044&lt;br /&gt;
|0x800a&lt;br /&gt;
|-&lt;br /&gt;
|allinstances&lt;br /&gt;
|0x8045&lt;br /&gt;
|0x800b&lt;br /&gt;
|-&lt;br /&gt;
|hideallparts&lt;br /&gt;
|0x8046&lt;br /&gt;
|0x800c&lt;br /&gt;
|-&lt;br /&gt;
|showpart&lt;br /&gt;
|0x8047&lt;br /&gt;
|0x800d&lt;br /&gt;
|-&lt;br /&gt;
|showallparts&lt;br /&gt;
|0x8048&lt;br /&gt;
|0x800e&lt;br /&gt;
|-&lt;br /&gt;
|linkto&lt;br /&gt;
|0x8049&lt;br /&gt;
|0x800f&lt;br /&gt;
|-&lt;br /&gt;
|linktoblendtotag&lt;br /&gt;
|0x804a&lt;br /&gt;
|0x8010&lt;br /&gt;
|-&lt;br /&gt;
|unlink&lt;br /&gt;
|0x804b&lt;br /&gt;
|0x8011&lt;br /&gt;
|-&lt;br /&gt;
|islinked&lt;br /&gt;
|0x8063&lt;br /&gt;
|0x8012&lt;br /&gt;
|-&lt;br /&gt;
|enablelinkto&lt;br /&gt;
|0x8064&lt;br /&gt;
|0x8013&lt;br /&gt;
|-&lt;br /&gt;
|playerlinkto&lt;br /&gt;
|0x8075&lt;br /&gt;
|0x8014&lt;br /&gt;
|-&lt;br /&gt;
|playerlinktodelta&lt;br /&gt;
|0x8076&lt;br /&gt;
|0x8015&lt;br /&gt;
|-&lt;br /&gt;
|playerlinkweaponviewtodelta&lt;br /&gt;
|0x8077&lt;br /&gt;
|0x8016&lt;br /&gt;
|-&lt;br /&gt;
|playerlinktoabsolute&lt;br /&gt;
|0x8078&lt;br /&gt;
|0x8017&lt;br /&gt;
|-&lt;br /&gt;
|playerlinktoblend&lt;br /&gt;
|0x8079&lt;br /&gt;
|0x8018&lt;br /&gt;
|-&lt;br /&gt;
|playerlinkedoffsetenable&lt;br /&gt;
|0x807a&lt;br /&gt;
|0x8019&lt;br /&gt;
|-&lt;br /&gt;
|playerlinkedoffsetdisable&lt;br /&gt;
|0x8094&lt;br /&gt;
|0x801a&lt;br /&gt;
|-&lt;br /&gt;
|playerlinkedsetviewznear&lt;br /&gt;
|0x8095&lt;br /&gt;
|0x801b&lt;br /&gt;
|-&lt;br /&gt;
|playerlinkedsetusebaseangleforviewclamp&lt;br /&gt;
|0x8096&lt;br /&gt;
|0x801c&lt;br /&gt;
|-&lt;br /&gt;
|lerpviewangleclamp&lt;br /&gt;
|0x8097&lt;br /&gt;
|0x801d&lt;br /&gt;
|-&lt;br /&gt;
|setviewangleresistance&lt;br /&gt;
|0x8098&lt;br /&gt;
|0x801e&lt;br /&gt;
|-&lt;br /&gt;
|geteye&lt;br /&gt;
|0x8099&lt;br /&gt;
|0x801f&lt;br /&gt;
|-&lt;br /&gt;
|istouching&lt;br /&gt;
|0x809a&lt;br /&gt;
|0x8020&lt;br /&gt;
|-&lt;br /&gt;
|stoploopsound&lt;br /&gt;
|0x809b&lt;br /&gt;
|0x8021&lt;br /&gt;
|-&lt;br /&gt;
|stopsounds&lt;br /&gt;
|0x809c&lt;br /&gt;
|0x8022&lt;br /&gt;
|-&lt;br /&gt;
|playrumbleonentity&lt;br /&gt;
|0x809d&lt;br /&gt;
|0x8023&lt;br /&gt;
|-&lt;br /&gt;
|playrumblelooponentity&lt;br /&gt;
|0x809e&lt;br /&gt;
|0x8024&lt;br /&gt;
|-&lt;br /&gt;
|stoprumble&lt;br /&gt;
|0x809f&lt;br /&gt;
|0x8025&lt;br /&gt;
|-&lt;br /&gt;
|delete&lt;br /&gt;
|0x80a0&lt;br /&gt;
|0x8026&lt;br /&gt;
|-&lt;br /&gt;
|setmodel&lt;br /&gt;
|0x80a1&lt;br /&gt;
|0x8027&lt;br /&gt;
|-&lt;br /&gt;
|laseron&lt;br /&gt;
|0x80a2&lt;br /&gt;
|0x8028&lt;br /&gt;
|-&lt;br /&gt;
|laseroff&lt;br /&gt;
|0x80a3&lt;br /&gt;
|0x8029&lt;br /&gt;
|-&lt;br /&gt;
|laseraltviewon&lt;br /&gt;
|0x80a4&lt;br /&gt;
|0x802a&lt;br /&gt;
|-&lt;br /&gt;
|laseraltviewoff&lt;br /&gt;
|0x80a5&lt;br /&gt;
|0x802b&lt;br /&gt;
|-&lt;br /&gt;
|thermalvisionon&lt;br /&gt;
|0x80a6&lt;br /&gt;
|0x802c&lt;br /&gt;
|-&lt;br /&gt;
|thermalvisionoff&lt;br /&gt;
|0x80a7&lt;br /&gt;
|0x802d&lt;br /&gt;
|-&lt;br /&gt;
|unknown&lt;br /&gt;
|0x8023&lt;br /&gt;
|0x82ef&lt;br /&gt;
|-&lt;br /&gt;
|unknown&lt;br /&gt;
|0x8000&lt;br /&gt;
|0x82f0&lt;br /&gt;
|-&lt;br /&gt;
|thermalvisionfofoverlayon&lt;br /&gt;
|0x80a8&lt;br /&gt;
|0x802e&lt;br /&gt;
|-&lt;br /&gt;
|thermalvisionfofoverlayoff&lt;br /&gt;
|0x80a9&lt;br /&gt;
|0x802f&lt;br /&gt;
|-&lt;br /&gt;
|autospotoverlayon&lt;br /&gt;
|0x80aa&lt;br /&gt;
|0x8030&lt;br /&gt;
|-&lt;br /&gt;
|autospotoverlayoff&lt;br /&gt;
|0x80ab&lt;br /&gt;
|0x8031&lt;br /&gt;
|-&lt;br /&gt;
|setcontents&lt;br /&gt;
|0x80ac&lt;br /&gt;
|0x8032&lt;br /&gt;
|-&lt;br /&gt;
|makeusable&lt;br /&gt;
|0x80ad&lt;br /&gt;
|0x8033&lt;br /&gt;
|-&lt;br /&gt;
|makeunusable&lt;br /&gt;
|0x80ae&lt;br /&gt;
|0x8034&lt;br /&gt;
|-&lt;br /&gt;
|setcursorhint&lt;br /&gt;
|0x80c6&lt;br /&gt;
|0x8035&lt;br /&gt;
|-&lt;br /&gt;
|sethintstring&lt;br /&gt;
|0x80c7&lt;br /&gt;
|0x8036&lt;br /&gt;
|-&lt;br /&gt;
|forceusehinton&lt;br /&gt;
|0x80c8&lt;br /&gt;
|0x8037&lt;br /&gt;
|-&lt;br /&gt;
|forceusehintoff&lt;br /&gt;
|0x80c9&lt;br /&gt;
|0x8038&lt;br /&gt;
|-&lt;br /&gt;
|makesoft&lt;br /&gt;
|0x80ca&lt;br /&gt;
|0x8039&lt;br /&gt;
|-&lt;br /&gt;
|makehard&lt;br /&gt;
|0x80cb&lt;br /&gt;
|0x803a&lt;br /&gt;
|-&lt;br /&gt;
|willneverchange&lt;br /&gt;
|0x80cc&lt;br /&gt;
|0x803b&lt;br /&gt;
|-&lt;br /&gt;
|startfiring&lt;br /&gt;
|0x80cd&lt;br /&gt;
|0x803c&lt;br /&gt;
|-&lt;br /&gt;
|stopfiring&lt;br /&gt;
|0x80ce&lt;br /&gt;
|0x803d&lt;br /&gt;
|-&lt;br /&gt;
|isfiringturret&lt;br /&gt;
|0x80cf&lt;br /&gt;
|0x803e&lt;br /&gt;
|-&lt;br /&gt;
|startbarrelspin&lt;br /&gt;
|0x80d0&lt;br /&gt;
|0x803f&lt;br /&gt;
|-&lt;br /&gt;
|stopbarrelspin&lt;br /&gt;
|0x80d1&lt;br /&gt;
|0x8040&lt;br /&gt;
|-&lt;br /&gt;
|getbarrelspinrate&lt;br /&gt;
|0x80d2&lt;br /&gt;
|0x8041&lt;br /&gt;
|-&lt;br /&gt;
|remotecontrolturret&lt;br /&gt;
|0x80d3&lt;br /&gt;
|0x8042&lt;br /&gt;
|-&lt;br /&gt;
|remotecontrolturretoff&lt;br /&gt;
|0x80d4&lt;br /&gt;
|0x8043&lt;br /&gt;
|-&lt;br /&gt;
|shootturret&lt;br /&gt;
|0x80d5&lt;br /&gt;
|0x8044&lt;br /&gt;
|-&lt;br /&gt;
|getturretowner&lt;br /&gt;
|0x80d6&lt;br /&gt;
|0x8045&lt;br /&gt;
|-&lt;br /&gt;
|setsentryowner&lt;br /&gt;
|0x80ee&lt;br /&gt;
|0x8046&lt;br /&gt;
|-&lt;br /&gt;
|setsentrycarrier&lt;br /&gt;
|0x80ef&lt;br /&gt;
|0x8047&lt;br /&gt;
|-&lt;br /&gt;
|setturretminimapvisible&lt;br /&gt;
|0x80f0&lt;br /&gt;
|0x8048&lt;br /&gt;
|-&lt;br /&gt;
|settargetentity&lt;br /&gt;
|0x80f1&lt;br /&gt;
|0x8049&lt;br /&gt;
|-&lt;br /&gt;
|snaptotargetentity&lt;br /&gt;
|0x80f2&lt;br /&gt;
|0x804a&lt;br /&gt;
|-&lt;br /&gt;
|cleartargetentity&lt;br /&gt;
|0x80f3&lt;br /&gt;
|0x804b&lt;br /&gt;
|-&lt;br /&gt;
|getturrettarget&lt;br /&gt;
|0x80f4&lt;br /&gt;
|0x804c&lt;br /&gt;
|-&lt;br /&gt;
|setplayerspread&lt;br /&gt;
|0x80f5&lt;br /&gt;
|0x804d&lt;br /&gt;
|-&lt;br /&gt;
|setaispread&lt;br /&gt;
|0x80f6&lt;br /&gt;
|0x804e&lt;br /&gt;
|-&lt;br /&gt;
|setsuppressiontime&lt;br /&gt;
|0x80f7&lt;br /&gt;
|0x804f&lt;br /&gt;
|-&lt;br /&gt;
|setconvergencetime&lt;br /&gt;
|0x8119&lt;br /&gt;
|0x8050&lt;br /&gt;
|-&lt;br /&gt;
|setconvergenceheightpercent&lt;br /&gt;
|0x811a&lt;br /&gt;
|0x8051&lt;br /&gt;
|-&lt;br /&gt;
|setturretteam&lt;br /&gt;
|0x811b&lt;br /&gt;
|0x8052&lt;br /&gt;
|-&lt;br /&gt;
|maketurretsolid&lt;br /&gt;
|0x811c&lt;br /&gt;
|0x8053&lt;br /&gt;
|-&lt;br /&gt;
|maketurretoperable&lt;br /&gt;
|0x811d&lt;br /&gt;
|0x8054&lt;br /&gt;
|-&lt;br /&gt;
|maketurretinoperable&lt;br /&gt;
|0x811e&lt;br /&gt;
|0x8055&lt;br /&gt;
|-&lt;br /&gt;
|setturretaccuracy&lt;br /&gt;
|0x813a&lt;br /&gt;
|0x8056&lt;br /&gt;
|-&lt;br /&gt;
|setrightarc&lt;br /&gt;
|0x813b&lt;br /&gt;
|0x8057&lt;br /&gt;
|-&lt;br /&gt;
|setleftarc&lt;br /&gt;
|0x813c&lt;br /&gt;
|0x8058&lt;br /&gt;
|-&lt;br /&gt;
|settoparc&lt;br /&gt;
|0x813d&lt;br /&gt;
|0x8059&lt;br /&gt;
|-&lt;br /&gt;
|setbottomarc&lt;br /&gt;
|0x813e&lt;br /&gt;
|0x805a&lt;br /&gt;
|-&lt;br /&gt;
|setautorotationdelay&lt;br /&gt;
|0x813f&lt;br /&gt;
|0x805b&lt;br /&gt;
|-&lt;br /&gt;
|setdefaultdroppitch&lt;br /&gt;
|0x8140&lt;br /&gt;
|0x805c&lt;br /&gt;
|-&lt;br /&gt;
|restoredefaultdroppitch&lt;br /&gt;
|0x8141&lt;br /&gt;
|0x805d&lt;br /&gt;
|-&lt;br /&gt;
|turretfiredisable&lt;br /&gt;
|0x8142&lt;br /&gt;
|0x805e&lt;br /&gt;
|-&lt;br /&gt;
|turretfireenable&lt;br /&gt;
|0x8161&lt;br /&gt;
|0x805f&lt;br /&gt;
|-&lt;br /&gt;
|setturretmodechangewait&lt;br /&gt;
|0x8162&lt;br /&gt;
|0x8060&lt;br /&gt;
|-&lt;br /&gt;
|usetriggerrequirelookat&lt;br /&gt;
|0x8163&lt;br /&gt;
|0x8061&lt;br /&gt;
|-&lt;br /&gt;
|getstance&lt;br /&gt;
|0x8164&lt;br /&gt;
|0x8062&lt;br /&gt;
|-&lt;br /&gt;
|setstance&lt;br /&gt;
|0x8165&lt;br /&gt;
|0x8063&lt;br /&gt;
|-&lt;br /&gt;
|itemweaponsetammo&lt;br /&gt;
|0x8166&lt;br /&gt;
|0x8064&lt;br /&gt;
|-&lt;br /&gt;
|getammocount&lt;br /&gt;
|0x8167&lt;br /&gt;
|0x8065&lt;br /&gt;
|-&lt;br /&gt;
|gettagorigin&lt;br /&gt;
|0x8168&lt;br /&gt;
|0x8066&lt;br /&gt;
|-&lt;br /&gt;
|gettagangles&lt;br /&gt;
|0x8169&lt;br /&gt;
|0x8067&lt;br /&gt;
|-&lt;br /&gt;
|shellshock&lt;br /&gt;
|0x816a&lt;br /&gt;
|0x8068&lt;br /&gt;
|-&lt;br /&gt;
|stunplayer&lt;br /&gt;
|0x816b&lt;br /&gt;
|0x8069&lt;br /&gt;
|-&lt;br /&gt;
|stopshellshock&lt;br /&gt;
|0x816c&lt;br /&gt;
|0x806a&lt;br /&gt;
|-&lt;br /&gt;
|fadeoutshellshock&lt;br /&gt;
|0x816d&lt;br /&gt;
|0x806b&lt;br /&gt;
|-&lt;br /&gt;
|setdepthoffield&lt;br /&gt;
|0x816e&lt;br /&gt;
|0x806c&lt;br /&gt;
|-&lt;br /&gt;
|setviewmodeldepthoffield&lt;br /&gt;
|0x816f&lt;br /&gt;
|0x806d&lt;br /&gt;
|-&lt;br /&gt;
|setmotionblurmovescale&lt;br /&gt;
|0x8170&lt;br /&gt;
|0x806e&lt;br /&gt;
|-&lt;br /&gt;
|setmotionblurturnscale&lt;br /&gt;
|0x8190&lt;br /&gt;
|0x806f&lt;br /&gt;
|-&lt;br /&gt;
|setmotionblurzoomscale&lt;br /&gt;
|0x8191&lt;br /&gt;
|0x8070&lt;br /&gt;
|-&lt;br /&gt;
|viewkick&lt;br /&gt;
|0x8192&lt;br /&gt;
|0x8071&lt;br /&gt;
|-&lt;br /&gt;
|localtoworldcoords&lt;br /&gt;
|0x8193&lt;br /&gt;
|0x8072&lt;br /&gt;
|-&lt;br /&gt;
|getentitynumber&lt;br /&gt;
|0x8194&lt;br /&gt;
|0x8073&lt;br /&gt;
|-&lt;br /&gt;
|getentityvelocity&lt;br /&gt;
|0x8195&lt;br /&gt;
|0x8074&lt;br /&gt;
|-&lt;br /&gt;
|enablegrenadetouchdamage&lt;br /&gt;
|0x8196&lt;br /&gt;
|0x8075&lt;br /&gt;
|-&lt;br /&gt;
|disablegrenadetouchdamage&lt;br /&gt;
|0x8197&lt;br /&gt;
|0x8076&lt;br /&gt;
|-&lt;br /&gt;
|enableaimassist&lt;br /&gt;
|0x8198&lt;br /&gt;
|0x8077&lt;br /&gt;
|-&lt;br /&gt;
|disableaimassist&lt;br /&gt;
|0x81b7&lt;br /&gt;
|0x8078&lt;br /&gt;
|-&lt;br /&gt;
|radiusdamage&lt;br /&gt;
|0x81b8&lt;br /&gt;
|0x8079&lt;br /&gt;
|-&lt;br /&gt;
|detonate&lt;br /&gt;
|0x81b9&lt;br /&gt;
|0x807a&lt;br /&gt;
|-&lt;br /&gt;
|damageconetrace&lt;br /&gt;
|0x81ba&lt;br /&gt;
|0x807b&lt;br /&gt;
|-&lt;br /&gt;
|sightconetrace&lt;br /&gt;
|0x81bb&lt;br /&gt;
|0x807c&lt;br /&gt;
|-&lt;br /&gt;
|settargetent&lt;br /&gt;
|0x81bc&lt;br /&gt;
|0x807d&lt;br /&gt;
|-&lt;br /&gt;
|settargetpos&lt;br /&gt;
|0x81bd&lt;br /&gt;
|0x807e&lt;br /&gt;
|-&lt;br /&gt;
|cleartarget&lt;br /&gt;
|0x81be&lt;br /&gt;
|0x807f&lt;br /&gt;
|-&lt;br /&gt;
|setflightmodedirect&lt;br /&gt;
|0x81bf&lt;br /&gt;
|0x8080&lt;br /&gt;
|-&lt;br /&gt;
|setflightmodetop&lt;br /&gt;
|0x81c0&lt;br /&gt;
|0x8081&lt;br /&gt;
|-&lt;br /&gt;
|getlightintensity&lt;br /&gt;
|0x81c1&lt;br /&gt;
|0x8082&lt;br /&gt;
|-&lt;br /&gt;
|setlightintensity&lt;br /&gt;
|0x81c2&lt;br /&gt;
|0x8083&lt;br /&gt;
|-&lt;br /&gt;
|isragdoll&lt;br /&gt;
|0x81c3&lt;br /&gt;
|0x8084&lt;br /&gt;
|-&lt;br /&gt;
|setmovespeedscale&lt;br /&gt;
|0x81c4&lt;br /&gt;
|0x8085&lt;br /&gt;
|-&lt;br /&gt;
|cameralinkto&lt;br /&gt;
|0x81c5&lt;br /&gt;
|0x8086&lt;br /&gt;
|-&lt;br /&gt;
|cameraunlink&lt;br /&gt;
|0x81c6&lt;br /&gt;
|0x8087&lt;br /&gt;
|-&lt;br /&gt;
|controlslinkto&lt;br /&gt;
|0x81e3&lt;br /&gt;
|0x8088&lt;br /&gt;
|-&lt;br /&gt;
|controlsunlink&lt;br /&gt;
|0x81e4&lt;br /&gt;
|0x8089&lt;br /&gt;
|-&lt;br /&gt;
|makevehiclesolidcapsule&lt;br /&gt;
|0x81e5&lt;br /&gt;
|0x808a&lt;br /&gt;
|-&lt;br /&gt;
|makevehiclesolidsphere&lt;br /&gt;
|0x81e6&lt;br /&gt;
|0x808b&lt;br /&gt;
|-&lt;br /&gt;
|remotecontrolvehicle&lt;br /&gt;
|0x81e8&lt;br /&gt;
|0x808d&lt;br /&gt;
|-&lt;br /&gt;
|remotecontrolvehicleoff&lt;br /&gt;
|0x81e9&lt;br /&gt;
|0x808e&lt;br /&gt;
|-&lt;br /&gt;
|isfiringvehicleturret&lt;br /&gt;
|0x81ea&lt;br /&gt;
|0x808f&lt;br /&gt;
|-&lt;br /&gt;
|drivevehicleandcontrolturret&lt;br /&gt;
|0x81eb&lt;br /&gt;
|0x8090&lt;br /&gt;
|-&lt;br /&gt;
|drivevehicleandcontrolturretoff&lt;br /&gt;
|0x81ec&lt;br /&gt;
|0x8091&lt;br /&gt;
|-&lt;br /&gt;
|getplayersetting&lt;br /&gt;
|0x81ed&lt;br /&gt;
|0x8092&lt;br /&gt;
|-&lt;br /&gt;
|getlocalplayerprofiledata&lt;br /&gt;
|0x81ee&lt;br /&gt;
|0x8093&lt;br /&gt;
|-&lt;br /&gt;
|setlocalplayerprofiledata&lt;br /&gt;
|0x81ef&lt;br /&gt;
|0x8094&lt;br /&gt;
|-&lt;br /&gt;
|remotecamerasoundscapeon&lt;br /&gt;
|0x81f0&lt;br /&gt;
|0x8095&lt;br /&gt;
|-&lt;br /&gt;
|remotecamerasoundscapeoff&lt;br /&gt;
|0x81f1&lt;br /&gt;
|0x8096&lt;br /&gt;
|-&lt;br /&gt;
|radarjamon&lt;br /&gt;
|0x81f2&lt;br /&gt;
|0x8097&lt;br /&gt;
|-&lt;br /&gt;
|radarjamoff&lt;br /&gt;
|0x81f3&lt;br /&gt;
|0x8098&lt;br /&gt;
|-&lt;br /&gt;
|setmotiontrackervisible&lt;br /&gt;
|0x81f4&lt;br /&gt;
|0x8099&lt;br /&gt;
|-&lt;br /&gt;
|getmotiontrackervisible&lt;br /&gt;
|0x81f5&lt;br /&gt;
|0x809a&lt;br /&gt;
|-&lt;br /&gt;
|circle&lt;br /&gt;
|0x81f6&lt;br /&gt;
|0x809b&lt;br /&gt;
|-&lt;br /&gt;
|getpointinbounds&lt;br /&gt;
|0x81f7&lt;br /&gt;
|0x809c&lt;br /&gt;
|-&lt;br /&gt;
|transfermarkstonewscriptmodel&lt;br /&gt;
|0x81f8&lt;br /&gt;
|0x809d&lt;br /&gt;
|-&lt;br /&gt;
|setwatersheeting&lt;br /&gt;
|0x81f9&lt;br /&gt;
|0x809e&lt;br /&gt;
|-&lt;br /&gt;
|setweaponhudiconoverride&lt;br /&gt;
|0x81fa&lt;br /&gt;
|0x809f&lt;br /&gt;
|-&lt;br /&gt;
|getweaponhudiconoverride&lt;br /&gt;
|0x81fb&lt;br /&gt;
|0x80a0&lt;br /&gt;
|-&lt;br /&gt;
|setempjammed&lt;br /&gt;
|0x81fc&lt;br /&gt;
|0x80a1&lt;br /&gt;
|-&lt;br /&gt;
|playersetexpfog&lt;br /&gt;
|0x81fd&lt;br /&gt;
|0x80a2&lt;br /&gt;
|-&lt;br /&gt;
|isitemunlocked&lt;br /&gt;
|0x81fe&lt;br /&gt;
|0x80a3&lt;br /&gt;
|-&lt;br /&gt;
|getplayerdata&lt;br /&gt;
|0x81ff&lt;br /&gt;
|0x80a4&lt;br /&gt;
|-&lt;br /&gt;
|setplayerdata&lt;br /&gt;
|0x821a&lt;br /&gt;
|0x80a5&lt;br /&gt;
|-&lt;br /&gt;
|trackerupdate&lt;br /&gt;
|N/A&lt;br /&gt;
|0x80a6&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- player 1 --&amp;gt;&lt;br /&gt;
|pingplayer&lt;br /&gt;
|0x821c&lt;br /&gt;
|0x80a7&lt;br /&gt;
|-&lt;br /&gt;
|buttonpressed&lt;br /&gt;
|0x821d&lt;br /&gt;
|0x80a8&lt;br /&gt;
|-&lt;br /&gt;
|sayall&lt;br /&gt;
|0x821e&lt;br /&gt;
|0x80a9&lt;br /&gt;
|-&lt;br /&gt;
|sayteam&lt;br /&gt;
|0x821f&lt;br /&gt;
|0x80aa&lt;br /&gt;
|-&lt;br /&gt;
|showscoreboard&lt;br /&gt;
|0x8220&lt;br /&gt;
|0x80ab&lt;br /&gt;
|-&lt;br /&gt;
|setspawnweapon&lt;br /&gt;
|0x8221&lt;br /&gt;
|0x80ac&lt;br /&gt;
|-&lt;br /&gt;
|dropitem&lt;br /&gt;
|0x8222&lt;br /&gt;
|0x80ad&lt;br /&gt;
|-&lt;br /&gt;
|dropscavengerbag&lt;br /&gt;
|0x8223&lt;br /&gt;
|0x80ae&lt;br /&gt;
|-&lt;br /&gt;
|finishplayerdamage&lt;br /&gt;
|0x823c&lt;br /&gt;
|0x80af&lt;br /&gt;
|-&lt;br /&gt;
|suicide&lt;br /&gt;
|0x823d&lt;br /&gt;
|0x80b0&lt;br /&gt;
|-&lt;br /&gt;
|closeingamemenu&lt;br /&gt;
|0x823e&lt;br /&gt;
|0x80b1&lt;br /&gt;
|-&lt;br /&gt;
|iprintln&lt;br /&gt;
|0x823f&lt;br /&gt;
|0x80b2&lt;br /&gt;
|-&lt;br /&gt;
|iprintlnbold&lt;br /&gt;
|0x8240&lt;br /&gt;
|0x80b3&lt;br /&gt;
|-&lt;br /&gt;
|spawn&lt;br /&gt;
|0x8241&lt;br /&gt;
|0x80b4&lt;br /&gt;
|-&lt;br /&gt;
|setentertime&lt;br /&gt;
|0x8242&lt;br /&gt;
|0x80b5&lt;br /&gt;
|-&lt;br /&gt;
|cloneplayer&lt;br /&gt;
|0x8243&lt;br /&gt;
|0x80b6&lt;br /&gt;
|-&lt;br /&gt;
|istalking&lt;br /&gt;
|0x8244&lt;br /&gt;
|0x80b7&lt;br /&gt;
|-&lt;br /&gt;
|allowspectateteam&lt;br /&gt;
|0x8245&lt;br /&gt;
|0x80b8&lt;br /&gt;
|-&lt;br /&gt;
|getguid&lt;br /&gt;
|0x8246&lt;br /&gt;
|0x80b9&lt;br /&gt;
|-&lt;br /&gt;
|getxuid&lt;br /&gt;
|0x8266&lt;br /&gt;
|0x80ba&lt;br /&gt;
|-&lt;br /&gt;
|ishost&lt;br /&gt;
|0x8267&lt;br /&gt;
|0x80bb&lt;br /&gt;
|-&lt;br /&gt;
|getspectatingplayer&lt;br /&gt;
|0x8268&lt;br /&gt;
|0x80bc&lt;br /&gt;
|-&lt;br /&gt;
|predictstreampos&lt;br /&gt;
|0x8269&lt;br /&gt;
|0x80bd&lt;br /&gt;
|-&lt;br /&gt;
|updatescores&lt;br /&gt;
|0x826a&lt;br /&gt;
|0x80be&lt;br /&gt;
|-&lt;br /&gt;
|updatedmscores&lt;br /&gt;
|0x826b&lt;br /&gt;
|0x80bf&lt;br /&gt;
|-&lt;br /&gt;
|setrank&lt;br /&gt;
|0x826c&lt;br /&gt;
|0x80c0&lt;br /&gt;
|-&lt;br /&gt;
|setcardtitle&lt;br /&gt;
|0x826d&lt;br /&gt;
|0x80c1&lt;br /&gt;
|-&lt;br /&gt;
|setcardicon&lt;br /&gt;
|0x828c&lt;br /&gt;
|0x80c2&lt;br /&gt;
|-&lt;br /&gt;
|setcardnameplate&lt;br /&gt;
|0x828d&lt;br /&gt;
|0x80c3&lt;br /&gt;
|-&lt;br /&gt;
|setcarddisplayslot&lt;br /&gt;
|0x828e&lt;br /&gt;
|0x80c4&lt;br /&gt;
|-&lt;br /&gt;
|kc_regweaponforfxremoval&lt;br /&gt;
|0x828f&lt;br /&gt;
|0x80c5&lt;br /&gt;
|-&lt;br /&gt;
|laststandrevive&lt;br /&gt;
|0x8290&lt;br /&gt;
|0x80c6&lt;br /&gt;
|-&lt;br /&gt;
|setspectatedefaults&lt;br /&gt;
|0x8291&lt;br /&gt;
|0x80c7&lt;br /&gt;
|-&lt;br /&gt;
|getthirdpersoncrosshairoffset&lt;br /&gt;
|0x8292&lt;br /&gt;
|0x80c8&lt;br /&gt;
|-&lt;br /&gt;
|disableweaponpickup&lt;br /&gt;
|0x8293&lt;br /&gt;
|0x80c9&lt;br /&gt;
|-&lt;br /&gt;
|enableweaponpickup&lt;br /&gt;
|0x8294&lt;br /&gt;
|0x80ca&lt;br /&gt;
|-&lt;br /&gt;
|issplitscreenplayer&lt;br /&gt;
|N/A&lt;br /&gt;
|0x80cb&lt;br /&gt;
|-&lt;br /&gt;
|issplitscreenplayerprimary&lt;br /&gt;
|N/A&lt;br /&gt;
|0x80cc&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- player 2 --&amp;gt;&lt;br /&gt;
|getviewmodel&lt;br /&gt;
|0x82b1&lt;br /&gt;
|0x80cd&lt;br /&gt;
|-&lt;br /&gt;
|fragbuttonpressed&lt;br /&gt;
|0x82b2&lt;br /&gt;
|0x80ce&lt;br /&gt;
|-&lt;br /&gt;
|secondaryoffhandbuttonpressed&lt;br /&gt;
|0x82b3&lt;br /&gt;
|0x80cf&lt;br /&gt;
|-&lt;br /&gt;
|getcurrentweaponclipammo&lt;br /&gt;
|0x82b4&lt;br /&gt;
|0x80d0&lt;br /&gt;
|-&lt;br /&gt;
|setvelocity&lt;br /&gt;
|0x82b5&lt;br /&gt;
|0x80d1&lt;br /&gt;
|-&lt;br /&gt;
|getplayerviewheight&lt;br /&gt;
|0x82b6&lt;br /&gt;
|0x80d2&lt;br /&gt;
|-&lt;br /&gt;
|unknown&lt;br /&gt;
|0x8309&lt;br /&gt;
|0x8309&lt;br /&gt;
|-&lt;br /&gt;
|getnormalizedmovement&lt;br /&gt;
|0x82b7&lt;br /&gt;
|0x80d3&lt;br /&gt;
|-&lt;br /&gt;
|getnormalizedcameramovement&lt;br /&gt;
|0x82ce&lt;br /&gt;
|0x80d4&lt;br /&gt;
|-&lt;br /&gt;
|giveweapon&lt;br /&gt;
|0x82cf&lt;br /&gt;
|0x80d5&lt;br /&gt;
|-&lt;br /&gt;
|takeweapon&lt;br /&gt;
|0x82d0&lt;br /&gt;
|0x80d6&lt;br /&gt;
|-&lt;br /&gt;
|takeallweapons&lt;br /&gt;
|0x82d1&lt;br /&gt;
|0x80d7&lt;br /&gt;
|-&lt;br /&gt;
|getcurrentweapon&lt;br /&gt;
|0x82d2&lt;br /&gt;
|0x80d8&lt;br /&gt;
|-&lt;br /&gt;
|getcurrentprimaryweapon&lt;br /&gt;
|0x82d3&lt;br /&gt;
|0x80d9&lt;br /&gt;
|-&lt;br /&gt;
|getcurrentoffhand&lt;br /&gt;
|0x82d4&lt;br /&gt;
|0x80da&lt;br /&gt;
|-&lt;br /&gt;
|hasweapon&lt;br /&gt;
|0x82d5&lt;br /&gt;
|0x80db&lt;br /&gt;
|-&lt;br /&gt;
|switchtoweapon&lt;br /&gt;
|0x82d6&lt;br /&gt;
|0x80dc&lt;br /&gt;
|-&lt;br /&gt;
|switchtoweaponimmediate&lt;br /&gt;
|0x82d7&lt;br /&gt;
|0x80dd&lt;br /&gt;
|-&lt;br /&gt;
|switchtooffhand&lt;br /&gt;
|0x82d8&lt;br /&gt;
|0x80de&lt;br /&gt;
|-&lt;br /&gt;
|givestartammo&lt;br /&gt;
|0x82f2&lt;br /&gt;
|0x80df&lt;br /&gt;
|-&lt;br /&gt;
|givemaxammo&lt;br /&gt;
|0x82f3&lt;br /&gt;
|0x80e0&lt;br /&gt;
|-&lt;br /&gt;
|getfractionstartammo&lt;br /&gt;
|0x82f4&lt;br /&gt;
|0x80e1&lt;br /&gt;
|-&lt;br /&gt;
|getfractionmaxammo&lt;br /&gt;
|0x82f5&lt;br /&gt;
|0x80e2&lt;br /&gt;
|-&lt;br /&gt;
|isdualwielding&lt;br /&gt;
|0x82f6&lt;br /&gt;
|0x80e3&lt;br /&gt;
|-&lt;br /&gt;
|isreloading&lt;br /&gt;
|0x82f7&lt;br /&gt;
|0x80e4&lt;br /&gt;
|-&lt;br /&gt;
|isswitchingweapon&lt;br /&gt;
|0x82f8&lt;br /&gt;
|0x80e5&lt;br /&gt;
|-&lt;br /&gt;
|setorigin&lt;br /&gt;
|0x82f9&lt;br /&gt;
|0x80e6&lt;br /&gt;
|-&lt;br /&gt;
|getvelocity&lt;br /&gt;
|0x82fa&lt;br /&gt;
|0x80e7&lt;br /&gt;
|-&lt;br /&gt;
|setplayerangles&lt;br /&gt;
|0x82fb&lt;br /&gt;
|0x80e8&lt;br /&gt;
|-&lt;br /&gt;
|getplayerangles&lt;br /&gt;
|0x82fc&lt;br /&gt;
|0x80e9&lt;br /&gt;
|-&lt;br /&gt;
|usebuttonpressed&lt;br /&gt;
|0x82fd&lt;br /&gt;
|0x80ea&lt;br /&gt;
|-&lt;br /&gt;
|attackbuttonpressed&lt;br /&gt;
|0x82fe&lt;br /&gt;
|0x80eb&lt;br /&gt;
|-&lt;br /&gt;
|adsbuttonpressed&lt;br /&gt;
|0x82ff&lt;br /&gt;
|0x80ec&lt;br /&gt;
|-&lt;br /&gt;
|meleebuttonpressed&lt;br /&gt;
|0x8300&lt;br /&gt;
|0x80ed&lt;br /&gt;
|-&lt;br /&gt;
|playerads&lt;br /&gt;
|0x8301&lt;br /&gt;
|0x80ee&lt;br /&gt;
|-&lt;br /&gt;
|isonground&lt;br /&gt;
|0x8302&lt;br /&gt;
|0x80ef&lt;br /&gt;
|-&lt;br /&gt;
|isusingturret&lt;br /&gt;
|0x8303&lt;br /&gt;
|0x80f0&lt;br /&gt;
|-&lt;br /&gt;
|setviewmodel&lt;br /&gt;
|0x8304&lt;br /&gt;
|0x80f1&lt;br /&gt;
|-&lt;br /&gt;
|setoffhandprimaryclass&lt;br /&gt;
|0x8305&lt;br /&gt;
|0x80f2&lt;br /&gt;
|-&lt;br /&gt;
|getoffhandprimaryclass&lt;br /&gt;
|0x8306&lt;br /&gt;
|0x80f3&lt;br /&gt;
|-&lt;br /&gt;
|setoffhandsecondaryclass&lt;br /&gt;
|0x82d9&lt;br /&gt;
|0x80f4&lt;br /&gt;
|-&lt;br /&gt;
|getoffhandsecondaryclass&lt;br /&gt;
|0x82da&lt;br /&gt;
|0x80f5&lt;br /&gt;
|-&lt;br /&gt;
|beginlocationselection&lt;br /&gt;
|0x82db&lt;br /&gt;
|0x80f6&lt;br /&gt;
|-&lt;br /&gt;
|endlocationselection&lt;br /&gt;
|0x82dc&lt;br /&gt;
|0x80f7&lt;br /&gt;
|-&lt;br /&gt;
|disableweapons&lt;br /&gt;
|0x82dd&lt;br /&gt;
|0x80f8&lt;br /&gt;
|-&lt;br /&gt;
|enableweapons&lt;br /&gt;
|0x82de&lt;br /&gt;
|0x80f9&lt;br /&gt;
|-&lt;br /&gt;
|disableoffhandweapons&lt;br /&gt;
|0x82df&lt;br /&gt;
|0x80fa&lt;br /&gt;
|-&lt;br /&gt;
|enableoffhandweapons&lt;br /&gt;
|0x82e0&lt;br /&gt;
|0x80fb&lt;br /&gt;
|-&lt;br /&gt;
|disableweaponswitch&lt;br /&gt;
|0x82e1&lt;br /&gt;
|0x80fc&lt;br /&gt;
|-&lt;br /&gt;
|enableweaponswitch&lt;br /&gt;
|0x82e2&lt;br /&gt;
|0x80fd&lt;br /&gt;
|-&lt;br /&gt;
|openpopupmenu&lt;br /&gt;
|0x82e3&lt;br /&gt;
|0x80fe&lt;br /&gt;
|-&lt;br /&gt;
|openpopupmenunomouse&lt;br /&gt;
|0x82e4&lt;br /&gt;
|0x80ff&lt;br /&gt;
|-&lt;br /&gt;
|closepopupmenu&lt;br /&gt;
|0x82e5&lt;br /&gt;
|0x8100&lt;br /&gt;
|-&lt;br /&gt;
|openmenu&lt;br /&gt;
|0x82e6&lt;br /&gt;
|0x8101&lt;br /&gt;
|-&lt;br /&gt;
|closemenu&lt;br /&gt;
|0x82e7&lt;br /&gt;
|0x8102&lt;br /&gt;
|-&lt;br /&gt;
|freezecontrols&lt;br /&gt;
|0x82e9&lt;br /&gt;
|0x8104&lt;br /&gt;
|-&lt;br /&gt;
|disableusability&lt;br /&gt;
|0x82ea&lt;br /&gt;
|0x8105&lt;br /&gt;
|-&lt;br /&gt;
|enableusability&lt;br /&gt;
|0x82eb&lt;br /&gt;
|0x8106&lt;br /&gt;
|-&lt;br /&gt;
|setwhizbyspreads&lt;br /&gt;
|0x82ec&lt;br /&gt;
|0x8107&lt;br /&gt;
|-&lt;br /&gt;
|setwhizbyradii&lt;br /&gt;
|0x82ed&lt;br /&gt;
|0x8108&lt;br /&gt;
|-&lt;br /&gt;
|setreverb&lt;br /&gt;
|0x82ee&lt;br /&gt;
|0x8109&lt;br /&gt;
|-&lt;br /&gt;
|deactivatereverb&lt;br /&gt;
|0x82ef&lt;br /&gt;
|0x810a&lt;br /&gt;
|-&lt;br /&gt;
|setvolmod&lt;br /&gt;
|0x82f0&lt;br /&gt;
|0x810b&lt;br /&gt;
|-&lt;br /&gt;
|setchannelvolume&lt;br /&gt;
|0x82f1&lt;br /&gt;
|0x810c&lt;br /&gt;
|-&lt;br /&gt;
|setchannelvolumes&lt;br /&gt;
|0x82b8&lt;br /&gt;
|0x810d&lt;br /&gt;
|-&lt;br /&gt;
|deactivatechannelvolumes&lt;br /&gt;
|0x82b9&lt;br /&gt;
|0x810e&lt;br /&gt;
|-&lt;br /&gt;
|playlocalsound&lt;br /&gt;
|0x82ba&lt;br /&gt;
|0x810f&lt;br /&gt;
|-&lt;br /&gt;
|stoplocalsound&lt;br /&gt;
|0x82bb&lt;br /&gt;
|0x8110&lt;br /&gt;
|-&lt;br /&gt;
|setweaponammoclip&lt;br /&gt;
|0x82bc&lt;br /&gt;
|0x8111&lt;br /&gt;
|-&lt;br /&gt;
|setweaponammostock&lt;br /&gt;
|0x82bd&lt;br /&gt;
|0x8112&lt;br /&gt;
|-&lt;br /&gt;
|getweaponammoclip&lt;br /&gt;
|0x82be&lt;br /&gt;
|0x8113&lt;br /&gt;
|-&lt;br /&gt;
|getweaponammostock&lt;br /&gt;
|0x82bf&lt;br /&gt;
|0x8114&lt;br /&gt;
|-&lt;br /&gt;
|anyammoforweaponmodes&lt;br /&gt;
|0x82c0&lt;br /&gt;
|0x8115&lt;br /&gt;
|-&lt;br /&gt;
|setclientdvar&lt;br /&gt;
|0x82c1&lt;br /&gt;
|0x8116&lt;br /&gt;
|-&lt;br /&gt;
|setclientdvars&lt;br /&gt;
|0x82c2&lt;br /&gt;
|0x8117&lt;br /&gt;
|-&lt;br /&gt;
|allowads&lt;br /&gt;
|0x82c3&lt;br /&gt;
|0x8118&lt;br /&gt;
|-&lt;br /&gt;
|allowjump&lt;br /&gt;
|0x82c4&lt;br /&gt;
|0x8119&lt;br /&gt;
|-&lt;br /&gt;
|allowsprint&lt;br /&gt;
|0x82c5&lt;br /&gt;
|0x811a&lt;br /&gt;
|-&lt;br /&gt;
|setspreadoverride&lt;br /&gt;
|0x82c6&lt;br /&gt;
|0x811b&lt;br /&gt;
|-&lt;br /&gt;
|resetspreadoverride&lt;br /&gt;
|0x82c7&lt;br /&gt;
|0x811c&lt;br /&gt;
|-&lt;br /&gt;
|setaimspreadmovementscale&lt;br /&gt;
|0x82c8&lt;br /&gt;
|0x811d&lt;br /&gt;
|-&lt;br /&gt;
|setactionslot&lt;br /&gt;
|0x82c9&lt;br /&gt;
|0x811e&lt;br /&gt;
|-&lt;br /&gt;
|setviewkickscale&lt;br /&gt;
|0x82ca&lt;br /&gt;
|0x811f&lt;br /&gt;
|-&lt;br /&gt;
|getviewkickscale&lt;br /&gt;
|0x82cb&lt;br /&gt;
|0x8120&lt;br /&gt;
|-&lt;br /&gt;
|getweaponslistall&lt;br /&gt;
|0x82cc&lt;br /&gt;
|0x8121&lt;br /&gt;
|-&lt;br /&gt;
|getweaponslistprimaries&lt;br /&gt;
|0x82cd&lt;br /&gt;
|0x8122&lt;br /&gt;
|-&lt;br /&gt;
|getweaponslistoffhands&lt;br /&gt;
|0x8296&lt;br /&gt;
|0x8123&lt;br /&gt;
|-&lt;br /&gt;
|getweaponslistitems&lt;br /&gt;
|0x8297&lt;br /&gt;
|0x8124&lt;br /&gt;
|-&lt;br /&gt;
|getweaponslistexclusives&lt;br /&gt;
|0x8298&lt;br /&gt;
|0x8125&lt;br /&gt;
|-&lt;br /&gt;
|getweaponslist&lt;br /&gt;
|0x8299&lt;br /&gt;
|0x8126&lt;br /&gt;
|-&lt;br /&gt;
|canplayerplacesentry&lt;br /&gt;
|0x829a&lt;br /&gt;
|0x8127&lt;br /&gt;
|-&lt;br /&gt;
|canplayerplacetank&lt;br /&gt;
|0x829b&lt;br /&gt;
|0x8128&lt;br /&gt;
|-&lt;br /&gt;
|visionsetnakedforplayer&lt;br /&gt;
|0x829c&lt;br /&gt;
|0x8129&lt;br /&gt;
|-&lt;br /&gt;
|visionsetnightforplayer&lt;br /&gt;
|0x829d&lt;br /&gt;
|0x812a&lt;br /&gt;
|-&lt;br /&gt;
|visionsetmissilecamforplayer&lt;br /&gt;
|0x829e&lt;br /&gt;
|0x812b&lt;br /&gt;
|-&lt;br /&gt;
|visionsetthermalforplayer&lt;br /&gt;
|0x829f&lt;br /&gt;
|0x812c&lt;br /&gt;
|-&lt;br /&gt;
|visionsetpainforplayer&lt;br /&gt;
|0x82a0&lt;br /&gt;
|0x812d&lt;br /&gt;
|-&lt;br /&gt;
|setblurforplayer&lt;br /&gt;
|0x82a1&lt;br /&gt;
|0x812e&lt;br /&gt;
|-&lt;br /&gt;
|getplayerweaponmodel&lt;br /&gt;
|0x82a2&lt;br /&gt;
|0x812f&lt;br /&gt;
|-&lt;br /&gt;
|getplayerknifemodel&lt;br /&gt;
|0x82a3&lt;br /&gt;
|0x8130&lt;br /&gt;
|-&lt;br /&gt;
|updateplayermodelwithweapons&lt;br /&gt;
|0x82a4&lt;br /&gt;
|0x8131&lt;br /&gt;
|-&lt;br /&gt;
|notifyonplayercommand&lt;br /&gt;
|0x82a5&lt;br /&gt;
|0x8132&lt;br /&gt;
|-&lt;br /&gt;
|canmantle&lt;br /&gt;
|0x82a6&lt;br /&gt;
|0x8133&lt;br /&gt;
|-&lt;br /&gt;
|forcemantle&lt;br /&gt;
|0x82a7&lt;br /&gt;
|0x8134&lt;br /&gt;
|-&lt;br /&gt;
|ismantling&lt;br /&gt;
|0x82a8&lt;br /&gt;
|0x8135&lt;br /&gt;
|-&lt;br /&gt;
|playfx&lt;br /&gt;
|0x82a9&lt;br /&gt;
|0x8136&lt;br /&gt;
|-&lt;br /&gt;
|recoilscaleon&lt;br /&gt;
|0x82aa&lt;br /&gt;
|0x8137&lt;br /&gt;
|-&lt;br /&gt;
|recoilscaleoff&lt;br /&gt;
|0x82ab&lt;br /&gt;
|0x8138&lt;br /&gt;
|-&lt;br /&gt;
|weaponlockstart&lt;br /&gt;
|0x82ac&lt;br /&gt;
|0x8139&lt;br /&gt;
|-&lt;br /&gt;
|weaponlockfinalize&lt;br /&gt;
|0x82ad&lt;br /&gt;
|0x813a&lt;br /&gt;
|-&lt;br /&gt;
|weaponlockfree&lt;br /&gt;
|0x82ae&lt;br /&gt;
|0x813b&lt;br /&gt;
|-&lt;br /&gt;
|weaponlocktargettooclose&lt;br /&gt;
|0x82af&lt;br /&gt;
|0x813c&lt;br /&gt;
|-&lt;br /&gt;
|weaponlocknoclearance&lt;br /&gt;
|0x826e&lt;br /&gt;
|0x813d&lt;br /&gt;
|-&lt;br /&gt;
|visionsyncwithplayer&lt;br /&gt;
|0x826f&lt;br /&gt;
|0x813e&lt;br /&gt;
|-&lt;br /&gt;
|showhudsplash&lt;br /&gt;
|0x8270&lt;br /&gt;
|0x813f&lt;br /&gt;
|-&lt;br /&gt;
|setperk&lt;br /&gt;
|0x8271&lt;br /&gt;
|0x8140&lt;br /&gt;
|-&lt;br /&gt;
|hasperk&lt;br /&gt;
|0x8272&lt;br /&gt;
|0x8141&lt;br /&gt;
|-&lt;br /&gt;
|clearperks&lt;br /&gt;
|0x8273&lt;br /&gt;
|0x8142&lt;br /&gt;
|-&lt;br /&gt;
|unsetperk&lt;br /&gt;
|0x8274&lt;br /&gt;
|0x8143&lt;br /&gt;
|-&lt;br /&gt;
|noclip&lt;br /&gt;
|0x8275&lt;br /&gt;
|0x8144&lt;br /&gt;
|-&lt;br /&gt;
|ufo&lt;br /&gt;
|0x8276&lt;br /&gt;
|0x8145&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- script ent --&amp;gt;&lt;br /&gt;
|moveto&lt;br /&gt;
|0x8277&lt;br /&gt;
|0x8146&lt;br /&gt;
|-&lt;br /&gt;
|movex&lt;br /&gt;
|0x8278&lt;br /&gt;
|0x8147&lt;br /&gt;
|-&lt;br /&gt;
|movey&lt;br /&gt;
|0x8279&lt;br /&gt;
|0x8148&lt;br /&gt;
|-&lt;br /&gt;
|movez&lt;br /&gt;
|0x827A&lt;br /&gt;
|0x8149&lt;br /&gt;
|-&lt;br /&gt;
|movegravity&lt;br /&gt;
|0x827B&lt;br /&gt;
|0x814A&lt;br /&gt;
|-&lt;br /&gt;
|moveslide&lt;br /&gt;
|0x827C&lt;br /&gt;
|0x814B&lt;br /&gt;
|-&lt;br /&gt;
|stopmoveslide&lt;br /&gt;
|0x827D&lt;br /&gt;
|0x814C&lt;br /&gt;
|-&lt;br /&gt;
|rotateto&lt;br /&gt;
|0x827E&lt;br /&gt;
|0x814D&lt;br /&gt;
|-&lt;br /&gt;
|rotatepitch&lt;br /&gt;
|0x827F&lt;br /&gt;
|0x814E&lt;br /&gt;
|-&lt;br /&gt;
|rotateyaw&lt;br /&gt;
|0x8280&lt;br /&gt;
|0x814F&lt;br /&gt;
|-&lt;br /&gt;
|rotateroll&lt;br /&gt;
|0x8281&lt;br /&gt;
|0x8150&lt;br /&gt;
|-&lt;br /&gt;
|addpitch&lt;br /&gt;
|0x8282&lt;br /&gt;
|0x8151&lt;br /&gt;
|-&lt;br /&gt;
|addyaw&lt;br /&gt;
|0x8283&lt;br /&gt;
|0x8152&lt;br /&gt;
|-&lt;br /&gt;
|addroll&lt;br /&gt;
|0x8284&lt;br /&gt;
|0x8153&lt;br /&gt;
|-&lt;br /&gt;
|vibrate&lt;br /&gt;
|0x8285&lt;br /&gt;
|0x8154&lt;br /&gt;
|-&lt;br /&gt;
|rotatevelocity&lt;br /&gt;
|0x8286&lt;br /&gt;
|0x8155&lt;br /&gt;
|-&lt;br /&gt;
|solid&lt;br /&gt;
|0x8287&lt;br /&gt;
|0x8156&lt;br /&gt;
|-&lt;br /&gt;
|notsolid&lt;br /&gt;
|0x8288&lt;br /&gt;
|0x8157&lt;br /&gt;
|-&lt;br /&gt;
|setcandamage&lt;br /&gt;
|0x8289&lt;br /&gt;
|0x8158&lt;br /&gt;
|-&lt;br /&gt;
|setcanradiusdamage&lt;br /&gt;
|0x828A&lt;br /&gt;
|0x8159&lt;br /&gt;
|-&lt;br /&gt;
|physicslaunchclient&lt;br /&gt;
|0x828B&lt;br /&gt;
|0x815A&lt;br /&gt;
|-&lt;br /&gt;
|physicslaunchserver&lt;br /&gt;
|0x8247&lt;br /&gt;
|0x815B&lt;br /&gt;
|-&lt;br /&gt;
|physicslaunchserveritem&lt;br /&gt;
|0x8248&lt;br /&gt;
|0x815C&lt;br /&gt;
|-&lt;br /&gt;
|clonebrushmodeltoscriptmodel&lt;br /&gt;
|0x8249&lt;br /&gt;
|0x815D&lt;br /&gt;
|-&lt;br /&gt;
|scriptmodelplayanim&lt;br /&gt;
|0x824A&lt;br /&gt;
|0x815E&lt;br /&gt;
|-&lt;br /&gt;
|scriptmodelclearanim&lt;br /&gt;
|0x824B&lt;br /&gt;
|0x815F&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- vehicle --&amp;gt;&lt;br /&gt;
|vehicle_teleport&lt;br /&gt;
|0x824C&lt;br /&gt;
|0x8160&lt;br /&gt;
|-&lt;br /&gt;
|attachpath&lt;br /&gt;
|0x824D&lt;br /&gt;
|0x8161&lt;br /&gt;
|-&lt;br /&gt;
|getattachpos&lt;br /&gt;
|0x824E&lt;br /&gt;
|0x8162&lt;br /&gt;
|-&lt;br /&gt;
|startpath&lt;br /&gt;
|0x824F&lt;br /&gt;
|0x8163&lt;br /&gt;
|-&lt;br /&gt;
|setswitchnode&lt;br /&gt;
|0x8250&lt;br /&gt;
|0x8164&lt;br /&gt;
|-&lt;br /&gt;
|setwaitspeed&lt;br /&gt;
|0x8251&lt;br /&gt;
|0x8165&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_finishdamage&lt;br /&gt;
|0x8252&lt;br /&gt;
|0x8166&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_setspeed&lt;br /&gt;
|0x8253&lt;br /&gt;
|0x8167&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_setspeedimmediate&lt;br /&gt;
|0x8254&lt;br /&gt;
|0x8168&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_rotateyaw&lt;br /&gt;
|0x8255&lt;br /&gt;
|0x8169&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_getspeed&lt;br /&gt;
|0x8256&lt;br /&gt;
|0x816a&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_getvelocity&lt;br /&gt;
|0x8257&lt;br /&gt;
|0x816b&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_getbodyvelocity&lt;br /&gt;
|0x8258&lt;br /&gt;
|0x816c&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_getsteering&lt;br /&gt;
|0x8259&lt;br /&gt;
|0x816d&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_getthrottle&lt;br /&gt;
|0x825A&lt;br /&gt;
|0x816e&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_turnengineoff&lt;br /&gt;
|0x825B&lt;br /&gt;
|0x816f&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_turnengineon&lt;br /&gt;
|0x825C&lt;br /&gt;
|0x8170&lt;br /&gt;
|-&lt;br /&gt;
|getgoalspeedmph&lt;br /&gt;
|0x825D&lt;br /&gt;
|0x8171&lt;br /&gt;
|-&lt;br /&gt;
|setacceleration&lt;br /&gt;
|0x825E&lt;br /&gt;
|0x8172&lt;br /&gt;
|-&lt;br /&gt;
|setdeceleration&lt;br /&gt;
|0x825F&lt;br /&gt;
|0x8173&lt;br /&gt;
|-&lt;br /&gt;
|resumespeed&lt;br /&gt;
|0x8260&lt;br /&gt;
|0x8174&lt;br /&gt;
|-&lt;br /&gt;
|setyawspeed&lt;br /&gt;
|0x8261&lt;br /&gt;
|0x8175&lt;br /&gt;
|-&lt;br /&gt;
|setyawspeedbyname&lt;br /&gt;
|0x8262&lt;br /&gt;
|0x8176&lt;br /&gt;
|-&lt;br /&gt;
|setmaxpitchroll&lt;br /&gt;
|0x8263&lt;br /&gt;
|0x8177&lt;br /&gt;
|-&lt;br /&gt;
|setairresistance&lt;br /&gt;
|0x8264&lt;br /&gt;
|0x8178&lt;br /&gt;
|-&lt;br /&gt;
|setturningability&lt;br /&gt;
|0x8265&lt;br /&gt;
|0x8179&lt;br /&gt;
|-&lt;br /&gt;
|setjitterparams&lt;br /&gt;
|0x8224&lt;br /&gt;
|0x817a&lt;br /&gt;
|-&lt;br /&gt;
|sethoverparams&lt;br /&gt;
|0x8225&lt;br /&gt;
|0x817b&lt;br /&gt;
|-&lt;br /&gt;
|joltbody&lt;br /&gt;
|0x8226&lt;br /&gt;
|0x817c&lt;br /&gt;
|-&lt;br /&gt;
|freevehicle&lt;br /&gt;
|0x8227&lt;br /&gt;
|0x817d&lt;br /&gt;
|-&lt;br /&gt;
|getwheelsurface&lt;br /&gt;
|0x8228&lt;br /&gt;
|0x817e&lt;br /&gt;
|-&lt;br /&gt;
|getvehicleowner&lt;br /&gt;
|0x8229&lt;br /&gt;
|0x817f&lt;br /&gt;
|-&lt;br /&gt;
|setvehiclelookattext&lt;br /&gt;
|0x822A&lt;br /&gt;
|0x8180&lt;br /&gt;
|-&lt;br /&gt;
|setvehicleteam&lt;br /&gt;
|0x822B&lt;br /&gt;
|0x8181&lt;br /&gt;
|-&lt;br /&gt;
|setneargoalnotifydist&lt;br /&gt;
|0x822C&lt;br /&gt;
|0x8182&lt;br /&gt;
|-&lt;br /&gt;
|setvehgoalpos&lt;br /&gt;
|0x822D&lt;br /&gt;
|0x8183&lt;br /&gt;
|-&lt;br /&gt;
|setgoalyaw&lt;br /&gt;
|0x822E&lt;br /&gt;
|0x8184&lt;br /&gt;
|-&lt;br /&gt;
|cleargoalyaw&lt;br /&gt;
|0x822F&lt;br /&gt;
|0x8185&lt;br /&gt;
|-&lt;br /&gt;
|settargetyaw&lt;br /&gt;
|0x8230&lt;br /&gt;
|0x8186&lt;br /&gt;
|-&lt;br /&gt;
|cleartargetyaw&lt;br /&gt;
|0x8231&lt;br /&gt;
|0x8187&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_helisetai&lt;br /&gt;
|0x8232&lt;br /&gt;
|0x8188&lt;br /&gt;
|-&lt;br /&gt;
|setturrettargetvec&lt;br /&gt;
|0x8233&lt;br /&gt;
|0x8189&lt;br /&gt;
|-&lt;br /&gt;
|setturrettargetent&lt;br /&gt;
|0x8234&lt;br /&gt;
|0x818a&lt;br /&gt;
|-&lt;br /&gt;
|clearturrettarget&lt;br /&gt;
|0x8235&lt;br /&gt;
|0x818b&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_canturrettargetpoint&lt;br /&gt;
|0x8236&lt;br /&gt;
|0x818c&lt;br /&gt;
|-&lt;br /&gt;
|setlookatent&lt;br /&gt;
|0x8237&lt;br /&gt;
|0x818d&lt;br /&gt;
|-&lt;br /&gt;
|clearlookatent&lt;br /&gt;
|0x8238&lt;br /&gt;
|0x818e&lt;br /&gt;
|-&lt;br /&gt;
|setvehweapon&lt;br /&gt;
|0x8239&lt;br /&gt;
|0x818f&lt;br /&gt;
|-&lt;br /&gt;
|fireweapon&lt;br /&gt;
|0x823A&lt;br /&gt;
|0x8190&lt;br /&gt;
|-&lt;br /&gt;
|vehicleturretcontrolon&lt;br /&gt;
|0x823B&lt;br /&gt;
|0x8191&lt;br /&gt;
|-&lt;br /&gt;
|vehicleturretcontroloff&lt;br /&gt;
|0x8200&lt;br /&gt;
|0x8192&lt;br /&gt;
|-&lt;br /&gt;
|isturretready&lt;br /&gt;
|0x8201&lt;br /&gt;
|0x8193&lt;br /&gt;
|-&lt;br /&gt;
|vehicledriveto&lt;br /&gt;
|0x8202&lt;br /&gt;
|0x8194&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_dospawn&lt;br /&gt;
|0x8203&lt;br /&gt;
|0x8195&lt;br /&gt;
|-&lt;br /&gt;
|vehicle_isphysveh&lt;br /&gt;
|0x8204&lt;br /&gt;
|0x8196&lt;br /&gt;
|-&lt;br /&gt;
|vehphys_crash&lt;br /&gt;
|0x8205&lt;br /&gt;
|0x8197&lt;br /&gt;
|-&lt;br /&gt;
|vehphys_launch&lt;br /&gt;
|0x8206&lt;br /&gt;
|0x8198&lt;br /&gt;
|-&lt;br /&gt;
|vehphys_disablecrashing&lt;br /&gt;
|0x8207&lt;br /&gt;
|0x8199&lt;br /&gt;
|-&lt;br /&gt;
|vehphys_enablecrashing&lt;br /&gt;
|0x8208&lt;br /&gt;
|0x819a&lt;br /&gt;
|-&lt;br /&gt;
|vehphys_setspeed&lt;br /&gt;
|0x8209&lt;br /&gt;
|0x819b&lt;br /&gt;
|-&lt;br /&gt;
|vehphys_setconveyorbelt&lt;br /&gt;
|0x820A&lt;br /&gt;
|0x819c&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- helicopter --&amp;gt;&lt;br /&gt;
|freehelicopter&lt;br /&gt;
|0x820B&lt;br /&gt;
|0x819D&lt;br /&gt;
|-&lt;br /&gt;
|setdamagestage&lt;br /&gt;
|0x8002&lt;br /&gt;
|0x82F2&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- hud element --&amp;gt;&lt;br /&gt;
|settext&lt;br /&gt;
|0x80b6&lt;br /&gt;
|0x827d&lt;br /&gt;
|-&lt;br /&gt;
|clearalltextafterhudelem&lt;br /&gt;
|0x80b7&lt;br /&gt;
|0x827e&lt;br /&gt;
|-&lt;br /&gt;
|setshader&lt;br /&gt;
|0x80b8&lt;br /&gt;
|0x827f&lt;br /&gt;
|-&lt;br /&gt;
|settargetent&lt;br /&gt;
|0x80b9&lt;br /&gt;
|0x8280&lt;br /&gt;
|-&lt;br /&gt;
|cleartargetent&lt;br /&gt;
|0x80ba&lt;br /&gt;
|0x8281&lt;br /&gt;
|-&lt;br /&gt;
|settimer&lt;br /&gt;
|0x80bb&lt;br /&gt;
|0x8282&lt;br /&gt;
|-&lt;br /&gt;
|settimerup&lt;br /&gt;
|0x80bc&lt;br /&gt;
|0x8283&lt;br /&gt;
|-&lt;br /&gt;
|settimerstatic&lt;br /&gt;
|0x80bd&lt;br /&gt;
|0x8284&lt;br /&gt;
|-&lt;br /&gt;
|settenthstimer&lt;br /&gt;
|0x80be&lt;br /&gt;
|0x8285&lt;br /&gt;
|-&lt;br /&gt;
|settenthstimerup&lt;br /&gt;
|0x80bf&lt;br /&gt;
|0x8286&lt;br /&gt;
|-&lt;br /&gt;
|settenthstimerstatic&lt;br /&gt;
|0x80c0&lt;br /&gt;
|0x8287&lt;br /&gt;
|-&lt;br /&gt;
|setclock&lt;br /&gt;
|0x80c1&lt;br /&gt;
|0x8288&lt;br /&gt;
|-&lt;br /&gt;
|setclockup&lt;br /&gt;
|0x80c2&lt;br /&gt;
|0x8289&lt;br /&gt;
|-&lt;br /&gt;
|setvalue&lt;br /&gt;
|0x80c3&lt;br /&gt;
|0x828a&lt;br /&gt;
|-&lt;br /&gt;
|setwaypoint&lt;br /&gt;
|0x80c4&lt;br /&gt;
|0x828b&lt;br /&gt;
|-&lt;br /&gt;
|rotatingicon&lt;br /&gt;
|0x80c5&lt;br /&gt;
|0x828c&lt;br /&gt;
|-&lt;br /&gt;
|secondaryarrow&lt;br /&gt;
|0x807b&lt;br /&gt;
|0x828d&lt;br /&gt;
|-&lt;br /&gt;
|setwaypointiconoffscreenonly&lt;br /&gt;
|0x807c&lt;br /&gt;
|0x828e&lt;br /&gt;
|-&lt;br /&gt;
|fadeovertime&lt;br /&gt;
|0x807d&lt;br /&gt;
|0x828f&lt;br /&gt;
|-&lt;br /&gt;
|scaleovertime&lt;br /&gt;
|0x807e&lt;br /&gt;
|0x8290&lt;br /&gt;
|-&lt;br /&gt;
|moveovertime&lt;br /&gt;
|0x807f&lt;br /&gt;
|0x8291&lt;br /&gt;
|-&lt;br /&gt;
|reset&lt;br /&gt;
|0x8080&lt;br /&gt;
|0x8292&lt;br /&gt;
|-&lt;br /&gt;
|destroy&lt;br /&gt;
|0x8081&lt;br /&gt;
|0x8293&lt;br /&gt;
|-&lt;br /&gt;
|setpulsefx&lt;br /&gt;
|0x8082&lt;br /&gt;
|0x8294&lt;br /&gt;
|-&lt;br /&gt;
|setplayernamestring&lt;br /&gt;
|0x8083&lt;br /&gt;
|0x8295&lt;br /&gt;
|-&lt;br /&gt;
|changefontscaleovertime&lt;br /&gt;
|N/A&lt;br /&gt;
|0x8296&lt;br /&gt;
|-&lt;br /&gt;
|fadeovertime2&lt;br /&gt;
|0x830b&lt;br /&gt;
|N/A&lt;br /&gt;
|-&lt;br /&gt;
|scaleovertime2&lt;br /&gt;
|0x830c&lt;br /&gt;
|N/A&lt;br /&gt;
|-&lt;br /&gt;
|moveovertime2&lt;br /&gt;
|0x8084&lt;br /&gt;
|N/A&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- client? --&amp;gt;&lt;br /&gt;
|getorigin&lt;br /&gt;
|0x808E&lt;br /&gt;
|0x82a0&lt;br /&gt;
|-&lt;br /&gt;
|useby&lt;br /&gt;
|0x8092&lt;br /&gt;
|0x82a4&lt;br /&gt;
|-&lt;br /&gt;
|playsound&lt;br /&gt;
|0x8093&lt;br /&gt;
|0x82a5&lt;br /&gt;
|-&lt;br /&gt;
|playsoundasmaster&lt;br /&gt;
|0x806E&lt;br /&gt;
|0x82af&lt;br /&gt;
|-&lt;br /&gt;
|playsoundtoteam&lt;br /&gt;
|0x8003&lt;br /&gt;
|0x82f3&lt;br /&gt;
|-&lt;br /&gt;
|playsoundtoplayer&lt;br /&gt;
|0x8004&lt;br /&gt;
|0x82f4&lt;br /&gt;
|-&lt;br /&gt;
|playloopsound&lt;br /&gt;
|0x806F&lt;br /&gt;
|0x82b0&lt;br /&gt;
|-&lt;br /&gt;
|getnormalhealth&lt;br /&gt;
|0x8074&lt;br /&gt;
|0x82b5&lt;br /&gt;
|-&lt;br /&gt;
|setnormalhealth&lt;br /&gt;
|0x804C&lt;br /&gt;
|0x82b6&lt;br /&gt;
|-&lt;br /&gt;
|show&lt;br /&gt;
|0x804F&lt;br /&gt;
|0x82b9&lt;br /&gt;
|-&lt;br /&gt;
|hide&lt;br /&gt;
|0x8050&lt;br /&gt;
|0x82ba&lt;br /&gt;
|-&lt;br /&gt;
|playerhide&lt;br /&gt;
|0x8005&lt;br /&gt;
|0x82f5&lt;br /&gt;
|-&lt;br /&gt;
|showtoplayer&lt;br /&gt;
|0x8006&lt;br /&gt;
|0x82f6&lt;br /&gt;
|-&lt;br /&gt;
|enableplayeruse&lt;br /&gt;
|0x8007&lt;br /&gt;
|0x82f7&lt;br /&gt;
|-&lt;br /&gt;
|disableplayeruse&lt;br /&gt;
|0x8008&lt;br /&gt;
|0x82f8&lt;br /&gt;
|-&lt;br /&gt;
|unknown&lt;br /&gt;
|0x830A&lt;br /&gt;
|0x830a&lt;br /&gt;
|-&lt;br /&gt;
|makescrambler&lt;br /&gt;
|0x8009&lt;br /&gt;
|0x82f9&lt;br /&gt;
|-&lt;br /&gt;
|makeportableradar&lt;br /&gt;
|0x800A&lt;br /&gt;
|0x82fa&lt;br /&gt;
|-&lt;br /&gt;
|maketrophysystem&lt;br /&gt;
|0x800B&lt;br /&gt;
|0x82fb&lt;br /&gt;
|-&lt;br /&gt;
|setmode&lt;br /&gt;
|0x8060&lt;br /&gt;
|0x82ca&lt;br /&gt;
|-&lt;br /&gt;
|getmode&lt;br /&gt;
|0x8061&lt;br /&gt;
|0x82cb&lt;br /&gt;
|-&lt;br /&gt;
|placespawnpoint&lt;br /&gt;
|0x800C&lt;br /&gt;
|0x82fc&lt;br /&gt;
|-&lt;br /&gt;
|setteamfortrigger&lt;br /&gt;
|0x800D&lt;br /&gt;
|0x82fd&lt;br /&gt;
|-&lt;br /&gt;
|clientclaimtrigger&lt;br /&gt;
|0x800E&lt;br /&gt;
|0x82fe&lt;br /&gt;
|-&lt;br /&gt;
|clientreleasetrigger&lt;br /&gt;
|0x800F&lt;br /&gt;
|0x82ff&lt;br /&gt;
|-&lt;br /&gt;
|releaseclaimedtrigger&lt;br /&gt;
|0x8010&lt;br /&gt;
|0x8300&lt;br /&gt;
|-&lt;br /&gt;
|isusingonlinedataoffline&lt;br /&gt;
|0x8011&lt;br /&gt;
|0x8301&lt;br /&gt;
|-&lt;br /&gt;
|getrestedtime&lt;br /&gt;
|0x8012&lt;br /&gt;
|0x8302&lt;br /&gt;
|-&lt;br /&gt;
|sendleaderboards&lt;br /&gt;
|0x8013&lt;br /&gt;
|0x8303&lt;br /&gt;
|-&lt;br /&gt;
|logstring&lt;br /&gt;
|0x8020&lt;br /&gt;
|0x82ec&lt;br /&gt;
|-&lt;br /&gt;
|isonladder&lt;br /&gt;
|0x8014&lt;br /&gt;
|0x8304&lt;br /&gt;
|-&lt;br /&gt;
|startragdoll&lt;br /&gt;
|0x801E&lt;br /&gt;
|0x82ea&lt;br /&gt;
|-&lt;br /&gt;
|getcorpseanim&lt;br /&gt;
|0x8015&lt;br /&gt;
|0x8305&lt;br /&gt;
|-&lt;br /&gt;
|playerforcedeathanim&lt;br /&gt;
|0x8016&lt;br /&gt;
|0x8306&lt;br /&gt;
|-&lt;br /&gt;
|startac130&lt;br /&gt;
|0x8307&lt;br /&gt;
|0x8307&lt;br /&gt;
|-&lt;br /&gt;
|stopac130&lt;br /&gt;
|0x8308&lt;br /&gt;
|0x8308&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Function List ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!rowspan=&amp;quot;2&amp;quot;|Function&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;|MW3&lt;br /&gt;
|-&lt;br /&gt;
!PC ID&lt;br /&gt;
!PS3/XBOX ID&lt;br /&gt;
&amp;lt;!-- funcion list 1 --&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|createprintchannel&lt;br /&gt;
|N/A&lt;br /&gt;
|0x1&lt;br /&gt;
|-&lt;br /&gt;
|setprintchannel&lt;br /&gt;
|0xe&lt;br /&gt;
|0x2&lt;br /&gt;
|-&lt;br /&gt;
|print&lt;br /&gt;
|0xf&lt;br /&gt;
|0x3&lt;br /&gt;
|-&lt;br /&gt;
|println&lt;br /&gt;
|0x10&lt;br /&gt;
|0x4&lt;br /&gt;
|-&lt;br /&gt;
|print3d&lt;br /&gt;
|0x11&lt;br /&gt;
|0x5&lt;br /&gt;
|-&lt;br /&gt;
|line&lt;br /&gt;
|0x12&lt;br /&gt;
|0x6&lt;br /&gt;
|-&lt;br /&gt;
|precacheturret&lt;br /&gt;
|N/A&lt;br /&gt;
|0x7&lt;br /&gt;
|-&lt;br /&gt;
|getweaponarray&lt;br /&gt;
|N/A&lt;br /&gt;
|0x8&lt;br /&gt;
|-&lt;br /&gt;
|spawnturret&lt;br /&gt;
|0x13&lt;br /&gt;
|0x9&lt;br /&gt;
|-&lt;br /&gt;
|canspawnturret&lt;br /&gt;
|0x14&lt;br /&gt;
|0xa&lt;br /&gt;
|-&lt;br /&gt;
|assert&lt;br /&gt;
|0x15&lt;br /&gt;
|0xb&lt;br /&gt;
|-&lt;br /&gt;
|assertex&lt;br /&gt;
|0x26&lt;br /&gt;
|0xc&lt;br /&gt;
|-&lt;br /&gt;
|assertmsg&lt;br /&gt;
|0x27&lt;br /&gt;
|0xd&lt;br /&gt;
|-&lt;br /&gt;
|isdefined&lt;br /&gt;
|0x28&lt;br /&gt;
|0xe&lt;br /&gt;
|-&lt;br /&gt;
|isstring&lt;br /&gt;
|0x29&lt;br /&gt;
|0xf&lt;br /&gt;
|-&lt;br /&gt;
|setdvar&lt;br /&gt;
|0x2a&lt;br /&gt;
|0x10&lt;br /&gt;
|-&lt;br /&gt;
|setdynamicdvar&lt;br /&gt;
|0x2b&lt;br /&gt;
|0x11&lt;br /&gt;
|-&lt;br /&gt;
|setdvarifuninitialized&lt;br /&gt;
|0x2c&lt;br /&gt;
|0x12&lt;br /&gt;
|-&lt;br /&gt;
|setdevdvar&lt;br /&gt;
|0x2d&lt;br /&gt;
|0x13&lt;br /&gt;
|-&lt;br /&gt;
|setdevdvarifuninitialized&lt;br /&gt;
|0x2e&lt;br /&gt;
|0x14&lt;br /&gt;
|-&lt;br /&gt;
|getdvar&lt;br /&gt;
|0x2f&lt;br /&gt;
|0x15&lt;br /&gt;
|-&lt;br /&gt;
|getdvarint&lt;br /&gt;
|0x30&lt;br /&gt;
|0x16&lt;br /&gt;
|-&lt;br /&gt;
|getdvarfloat&lt;br /&gt;
|0x31&lt;br /&gt;
|0x17&lt;br /&gt;
|-&lt;br /&gt;
|getdvarvector&lt;br /&gt;
|0x32&lt;br /&gt;
|0x18&lt;br /&gt;
|-&lt;br /&gt;
|gettime&lt;br /&gt;
|0x33&lt;br /&gt;
|0x19&lt;br /&gt;
|-&lt;br /&gt;
|getentbynum&lt;br /&gt;
|0x34&lt;br /&gt;
|0x1a&lt;br /&gt;
|-&lt;br /&gt;
|getweaponmodel&lt;br /&gt;
|0x35&lt;br /&gt;
|0x1b&lt;br /&gt;
|-&lt;br /&gt;
|getweaponhidetags&lt;br /&gt;
|0x51&lt;br /&gt;
|0x1c&lt;br /&gt;
|-&lt;br /&gt;
|getanimlength&lt;br /&gt;
|0x52&lt;br /&gt;
|0x1d&lt;br /&gt;
|-&lt;br /&gt;
|animhasnotetrack&lt;br /&gt;
|0x53&lt;br /&gt;
|0x1e&lt;br /&gt;
|-&lt;br /&gt;
|getnotetracktimes&lt;br /&gt;
|0x54&lt;br /&gt;
|0x1f&lt;br /&gt;
|-&lt;br /&gt;
|spawn&lt;br /&gt;
|0x55&lt;br /&gt;
|0x20&lt;br /&gt;
|-&lt;br /&gt;
|spawnloopsound&lt;br /&gt;
|0x56&lt;br /&gt;
|0x21&lt;br /&gt;
|-&lt;br /&gt;
|bullettrace&lt;br /&gt;
|0x57&lt;br /&gt;
|0x22&lt;br /&gt;
|-&lt;br /&gt;
|bullettracepassed&lt;br /&gt;
|0x58&lt;br /&gt;
|0x23&lt;br /&gt;
|-&lt;br /&gt;
|sighttracepassed&lt;br /&gt;
|0x74&lt;br /&gt;
|0x24&lt;br /&gt;
|-&lt;br /&gt;
|physicstrace&lt;br /&gt;
|0x75&lt;br /&gt;
|0x25&lt;br /&gt;
|-&lt;br /&gt;
|physicstracenormal&lt;br /&gt;
|0x76&lt;br /&gt;
|0x26&lt;br /&gt;
|-&lt;br /&gt;
|playerphysicstrace&lt;br /&gt;
|0x77&lt;br /&gt;
|0x27&lt;br /&gt;
|-&lt;br /&gt;
|getgroundposition&lt;br /&gt;
|0x78&lt;br /&gt;
|0x28&lt;br /&gt;
|-&lt;br /&gt;
|getmovedelta&lt;br /&gt;
|0x79&lt;br /&gt;
|0x29&lt;br /&gt;
|-&lt;br /&gt;
|getangledelta&lt;br /&gt;
|0x7a&lt;br /&gt;
|0x2a&lt;br /&gt;
|-&lt;br /&gt;
|getnorthyaw&lt;br /&gt;
|0x7b&lt;br /&gt;
|0x2b&lt;br /&gt;
|-&lt;br /&gt;
|setnorthyaw&lt;br /&gt;
|0x96&lt;br /&gt;
|0x2c&lt;br /&gt;
|-&lt;br /&gt;
|setslowmotion&lt;br /&gt;
|0x97&lt;br /&gt;
|0x2d&lt;br /&gt;
|-&lt;br /&gt;
|randomint&lt;br /&gt;
|0x98&lt;br /&gt;
|0x2e&lt;br /&gt;
|-&lt;br /&gt;
|randomfloat&lt;br /&gt;
|0x99&lt;br /&gt;
|0x2f&lt;br /&gt;
|-&lt;br /&gt;
|randomintrange&lt;br /&gt;
|0x9a&lt;br /&gt;
|0x30&lt;br /&gt;
|-&lt;br /&gt;
|randomfloatrange&lt;br /&gt;
|0x9b&lt;br /&gt;
|0x31&lt;br /&gt;
|-&lt;br /&gt;
|sin&lt;br /&gt;
|0x9c&lt;br /&gt;
|0x32&lt;br /&gt;
|-&lt;br /&gt;
|cos&lt;br /&gt;
|0x9d&lt;br /&gt;
|0x33&lt;br /&gt;
|-&lt;br /&gt;
|tan&lt;br /&gt;
|0x9e&lt;br /&gt;
|0x34&lt;br /&gt;
|-&lt;br /&gt;
|asin&lt;br /&gt;
|0x9f&lt;br /&gt;
|0x35&lt;br /&gt;
|-&lt;br /&gt;
|acos&lt;br /&gt;
|0xa0&lt;br /&gt;
|0x36&lt;br /&gt;
|-&lt;br /&gt;
|atan&lt;br /&gt;
|0xa1&lt;br /&gt;
|0x37&lt;br /&gt;
|-&lt;br /&gt;
|int&lt;br /&gt;
|0xa2&lt;br /&gt;
|0x38&lt;br /&gt;
|-&lt;br /&gt;
|float&lt;br /&gt;
|0xa3&lt;br /&gt;
|0x39&lt;br /&gt;
|-&lt;br /&gt;
|abs&lt;br /&gt;
|0xa4&lt;br /&gt;
|0x3a&lt;br /&gt;
|-&lt;br /&gt;
|min&lt;br /&gt;
|0xa5&lt;br /&gt;
|0x3b&lt;br /&gt;
|-&lt;br /&gt;
|max&lt;br /&gt;
|0xc6&lt;br /&gt;
|0x3c&lt;br /&gt;
|-&lt;br /&gt;
|floor&lt;br /&gt;
|0xc7&lt;br /&gt;
|0x3d&lt;br /&gt;
|-&lt;br /&gt;
|ceil&lt;br /&gt;
|0xc8&lt;br /&gt;
|0x3e&lt;br /&gt;
|-&lt;br /&gt;
|exp&lt;br /&gt;
|0xc9&lt;br /&gt;
|0x3f&lt;br /&gt;
|-&lt;br /&gt;
|log&lt;br /&gt;
|0xca&lt;br /&gt;
|0x40&lt;br /&gt;
|-&lt;br /&gt;
|sqrt&lt;br /&gt;
|0xcb&lt;br /&gt;
|0x41&lt;br /&gt;
|-&lt;br /&gt;
|squared&lt;br /&gt;
|0xcc&lt;br /&gt;
|0x42&lt;br /&gt;
|-&lt;br /&gt;
|clamp&lt;br /&gt;
|0xcd&lt;br /&gt;
|0x43&lt;br /&gt;
|-&lt;br /&gt;
|angleclamp&lt;br /&gt;
|0xce&lt;br /&gt;
|0x44&lt;br /&gt;
|-&lt;br /&gt;
|angleclamp180&lt;br /&gt;
|0xcf&lt;br /&gt;
|0x45&lt;br /&gt;
|-&lt;br /&gt;
|vectorfromlinetopoint&lt;br /&gt;
|0xd0&lt;br /&gt;
|0x46&lt;br /&gt;
|-&lt;br /&gt;
|pointonsegmentnearesttopoint&lt;br /&gt;
|0xd1&lt;br /&gt;
|0x47&lt;br /&gt;
|-&lt;br /&gt;
|distance&lt;br /&gt;
|0xd2&lt;br /&gt;
|0x48&lt;br /&gt;
|-&lt;br /&gt;
|distance2d&lt;br /&gt;
|0xd3&lt;br /&gt;
|0x49&lt;br /&gt;
|-&lt;br /&gt;
|distancesquared&lt;br /&gt;
|0xd4&lt;br /&gt;
|0x4a&lt;br /&gt;
|-&lt;br /&gt;
|length&lt;br /&gt;
|0xd5&lt;br /&gt;
|0x4b&lt;br /&gt;
|-&lt;br /&gt;
|lengthsquared&lt;br /&gt;
|0xd6&lt;br /&gt;
|0x4c&lt;br /&gt;
|-&lt;br /&gt;
|closer&lt;br /&gt;
|0xd7&lt;br /&gt;
|0x4d&lt;br /&gt;
|-&lt;br /&gt;
|vectordot&lt;br /&gt;
|0xd8&lt;br /&gt;
|0x4e&lt;br /&gt;
|-&lt;br /&gt;
|vectornormalize&lt;br /&gt;
|0xf6&lt;br /&gt;
|0x4f&lt;br /&gt;
|-&lt;br /&gt;
|vectortoangles&lt;br /&gt;
|0xf7&lt;br /&gt;
|0x50&lt;br /&gt;
|-&lt;br /&gt;
|vectortoyaw&lt;br /&gt;
|0xf8&lt;br /&gt;
|0x51&lt;br /&gt;
|-&lt;br /&gt;
|vectorlerp&lt;br /&gt;
|0xf9&lt;br /&gt;
|0x52&lt;br /&gt;
|-&lt;br /&gt;
|anglestoup&lt;br /&gt;
|0xfa&lt;br /&gt;
|0x53&lt;br /&gt;
|-&lt;br /&gt;
|anglestoright&lt;br /&gt;
|0xfb&lt;br /&gt;
|0x54&lt;br /&gt;
|-&lt;br /&gt;
|anglestoforward&lt;br /&gt;
|0xfc&lt;br /&gt;
|0x55&lt;br /&gt;
|-&lt;br /&gt;
|combineangles&lt;br /&gt;
|0xfd&lt;br /&gt;
|0x56&lt;br /&gt;
|-&lt;br /&gt;
|transformmove&lt;br /&gt;
|0xfe&lt;br /&gt;
|0x57&lt;br /&gt;
|-&lt;br /&gt;
|issubstr&lt;br /&gt;
|0xff&lt;br /&gt;
|0x58&lt;br /&gt;
|-&lt;br /&gt;
|isendstr&lt;br /&gt;
|0x100&lt;br /&gt;
|0x59&lt;br /&gt;
|-&lt;br /&gt;
|getsubstr&lt;br /&gt;
|0x101&lt;br /&gt;
|0x5a&lt;br /&gt;
|-&lt;br /&gt;
|tolower&lt;br /&gt;
|0x102&lt;br /&gt;
|0x5b&lt;br /&gt;
|-&lt;br /&gt;
|strtok&lt;br /&gt;
|0x103&lt;br /&gt;
|0x5c&lt;br /&gt;
|-&lt;br /&gt;
|stricmp&lt;br /&gt;
|0x104&lt;br /&gt;
|0x5d&lt;br /&gt;
|-&lt;br /&gt;
|ambientplay&lt;br /&gt;
|0x105&lt;br /&gt;
|0x5e&lt;br /&gt;
|-&lt;br /&gt;
|ambientstop&lt;br /&gt;
|0x125&lt;br /&gt;
|0x5f&lt;br /&gt;
|-&lt;br /&gt;
|precachemodel&lt;br /&gt;
|0x126&lt;br /&gt;
|0x60&lt;br /&gt;
|-&lt;br /&gt;
|precacheshellshock&lt;br /&gt;
|0x127&lt;br /&gt;
|0x61&lt;br /&gt;
|-&lt;br /&gt;
|precacheitem&lt;br /&gt;
|0x128&lt;br /&gt;
|0x62&lt;br /&gt;
|-&lt;br /&gt;
|precacheshader&lt;br /&gt;
|0x129&lt;br /&gt;
|0x63&lt;br /&gt;
|-&lt;br /&gt;
|precachestring&lt;br /&gt;
|0x12a&lt;br /&gt;
|0x64&lt;br /&gt;
|-&lt;br /&gt;
|precachemenu&lt;br /&gt;
|0x12b&lt;br /&gt;
|0x65&lt;br /&gt;
|-&lt;br /&gt;
|precacherumble&lt;br /&gt;
|0x12c&lt;br /&gt;
|0x66&lt;br /&gt;
|-&lt;br /&gt;
|precachelocationselector&lt;br /&gt;
|0x12d&lt;br /&gt;
|0x67&lt;br /&gt;
|-&lt;br /&gt;
|precacheleaderboards&lt;br /&gt;
|0x12e&lt;br /&gt;
|0x68&lt;br /&gt;
|-&lt;br /&gt;
|precacheheadicon&lt;br /&gt;
|0x146&lt;br /&gt;
|0xe9&lt;br /&gt;
|-&lt;br /&gt;
|loadfx&lt;br /&gt;
|0x12f&lt;br /&gt;
|0x1c5&lt;br /&gt;
|-&lt;br /&gt;
|playfx&lt;br /&gt;
|0x130&lt;br /&gt;
|0x1c6&lt;br /&gt;
|-&lt;br /&gt;
|unknown&lt;br /&gt;
|N/A&lt;br /&gt;
|0x69&lt;br /&gt;
|-&lt;br /&gt;
|playfxontag&lt;br /&gt;
|0x131&lt;br /&gt;
|0x6a&lt;br /&gt;
|-&lt;br /&gt;
|stopfxontag&lt;br /&gt;
|0x132&lt;br /&gt;
|0x6b&lt;br /&gt;
|-&lt;br /&gt;
|stopfxontag2&lt;br /&gt;
|N/A&lt;br /&gt;
|0x6c&lt;br /&gt;
|-&lt;br /&gt;
|playloopedfx&lt;br /&gt;
|0x133&lt;br /&gt;
|0x6d&lt;br /&gt;
|-&lt;br /&gt;
|spawnfx&lt;br /&gt;
|0x134&lt;br /&gt;
|0x6e&lt;br /&gt;
|-&lt;br /&gt;
|triggerfx&lt;br /&gt;
|0x135&lt;br /&gt;
|0x6f&lt;br /&gt;
|-&lt;br /&gt;
|playfxontagforclients&lt;br /&gt;
|0x136&lt;br /&gt;
|0x70&lt;br /&gt;
|-&lt;br /&gt;
|physicsexplosionsphere&lt;br /&gt;
|0x15a&lt;br /&gt;
|0x71&lt;br /&gt;
|-&lt;br /&gt;
|physicsexplosioncylinder&lt;br /&gt;
|0x15b&lt;br /&gt;
|0x72&lt;br /&gt;
|-&lt;br /&gt;
|physicsjolt&lt;br /&gt;
|0x15c&lt;br /&gt;
|0x73&lt;br /&gt;
|-&lt;br /&gt;
|physicsjitter&lt;br /&gt;
|0x15d&lt;br /&gt;
|0x74&lt;br /&gt;
|-&lt;br /&gt;
|setexpfog&lt;br /&gt;
|0x15e&lt;br /&gt;
|0x75&lt;br /&gt;
|-&lt;br /&gt;
|isexplosivedamagemod&lt;br /&gt;
|0x15f&lt;br /&gt;
|0x76&lt;br /&gt;
|-&lt;br /&gt;
|radiusdamage&lt;br /&gt;
|0x160&lt;br /&gt;
|0x77&lt;br /&gt;
|-&lt;br /&gt;
|setplayerignoreradiusdamage&lt;br /&gt;
|0x161&lt;br /&gt;
|0x78&lt;br /&gt;
|-&lt;br /&gt;
|glassradiusdamage&lt;br /&gt;
|0x162&lt;br /&gt;
|0x79&lt;br /&gt;
|-&lt;br /&gt;
|earthquake&lt;br /&gt;
|0x163&lt;br /&gt;
|0x7a&lt;br /&gt;
|-&lt;br /&gt;
|getnumparts&lt;br /&gt;
|0x164&lt;br /&gt;
|0x7b&lt;br /&gt;
|-&lt;br /&gt;
|getpartname&lt;br /&gt;
|0x182&lt;br /&gt;
|0x7c&lt;br /&gt;
|-&lt;br /&gt;
|weaponfiretime&lt;br /&gt;
|0x183&lt;br /&gt;
|0x7d&lt;br /&gt;
|-&lt;br /&gt;
|weaponclipsize&lt;br /&gt;
|0x184&lt;br /&gt;
|0x7e&lt;br /&gt;
|-&lt;br /&gt;
|weaponisauto&lt;br /&gt;
|0x185&lt;br /&gt;
|0x7f&lt;br /&gt;
|-&lt;br /&gt;
|weaponissemiauto&lt;br /&gt;
|0x186&lt;br /&gt;
|0x80&lt;br /&gt;
|-&lt;br /&gt;
|weaponisboltaction&lt;br /&gt;
|0x187&lt;br /&gt;
|0x81&lt;br /&gt;
|-&lt;br /&gt;
|weaponinheritsperks&lt;br /&gt;
|0x188&lt;br /&gt;
|0x82&lt;br /&gt;
|-&lt;br /&gt;
|weaponburstcount&lt;br /&gt;
|0x189&lt;br /&gt;
|0x83&lt;br /&gt;
|-&lt;br /&gt;
|weapontype&lt;br /&gt;
|0x18a&lt;br /&gt;
|0x84&lt;br /&gt;
|-&lt;br /&gt;
|weaponclass&lt;br /&gt;
|0x18b&lt;br /&gt;
|0x85&lt;br /&gt;
|-&lt;br /&gt;
|weaponinventorytype&lt;br /&gt;
|0x1b5&lt;br /&gt;
|0x86&lt;br /&gt;
|-&lt;br /&gt;
|weaponstartammo&lt;br /&gt;
|0x1b6&lt;br /&gt;
|0x87&lt;br /&gt;
|-&lt;br /&gt;
|weaponmaxammo&lt;br /&gt;
|0x1b7&lt;br /&gt;
|0x88&lt;br /&gt;
|-&lt;br /&gt;
|weaponaltweaponname&lt;br /&gt;
|0x1b8&lt;br /&gt;
|0x89&lt;br /&gt;
|-&lt;br /&gt;
|isweaponcliponly&lt;br /&gt;
|0x1b9&lt;br /&gt;
|0x8a&lt;br /&gt;
|-&lt;br /&gt;
|isweapondetonationtimed&lt;br /&gt;
|0x1ba&lt;br /&gt;
|0x8b&lt;br /&gt;
|-&lt;br /&gt;
|weaponhasthermalscope&lt;br /&gt;
|0x1bb&lt;br /&gt;
|0x8c&lt;br /&gt;
|-&lt;br /&gt;
|getvehiclenode&lt;br /&gt;
|0x1bc&lt;br /&gt;
|0x8d&lt;br /&gt;
|-&lt;br /&gt;
|getvehiclenodearray&lt;br /&gt;
|0x1bd&lt;br /&gt;
|0x8e&lt;br /&gt;
|-&lt;br /&gt;
|getallvehiclenodes&lt;br /&gt;
|0x1be&lt;br /&gt;
|0x8f&lt;br /&gt;
|-&lt;br /&gt;
|getnumvehicles&lt;br /&gt;
|0x1bf&lt;br /&gt;
|0x90&lt;br /&gt;
|-&lt;br /&gt;
|precachevehicle&lt;br /&gt;
|0x1c0&lt;br /&gt;
|0x91&lt;br /&gt;
|-&lt;br /&gt;
|spawnvehicle&lt;br /&gt;
|0x1c1&lt;br /&gt;
|0x92&lt;br /&gt;
|-&lt;br /&gt;
|getarray&lt;br /&gt;
|0x1c2&lt;br /&gt;
|0x93&lt;br /&gt;
|-&lt;br /&gt;
|getspawnerarray&lt;br /&gt;
|0x198&lt;br /&gt;
|0x94&lt;br /&gt;
|-&lt;br /&gt;
|playrumbleonposition&lt;br /&gt;
|0x199&lt;br /&gt;
|0x95&lt;br /&gt;
|-&lt;br /&gt;
|playrumblelooponposition&lt;br /&gt;
|0x19a&lt;br /&gt;
|0x96&lt;br /&gt;
|-&lt;br /&gt;
|stopallrumbles&lt;br /&gt;
|0x19b&lt;br /&gt;
|0x97&lt;br /&gt;
|-&lt;br /&gt;
|soundexists&lt;br /&gt;
|0x19c&lt;br /&gt;
|0x98&lt;br /&gt;
|-&lt;br /&gt;
|openfile&lt;br /&gt;
|0x19d&lt;br /&gt;
|0x99&lt;br /&gt;
|-&lt;br /&gt;
|closefile&lt;br /&gt;
|0x19e&lt;br /&gt;
|0x9a&lt;br /&gt;
|-&lt;br /&gt;
|fprintln&lt;br /&gt;
|0x19f&lt;br /&gt;
|0x9b&lt;br /&gt;
|-&lt;br /&gt;
|fprintfields&lt;br /&gt;
|0x1a0&lt;br /&gt;
|0x9c&lt;br /&gt;
|-&lt;br /&gt;
|freadln&lt;br /&gt;
|0x1a1&lt;br /&gt;
|0x9d&lt;br /&gt;
|-&lt;br /&gt;
|fgetarg&lt;br /&gt;
|0x1a2&lt;br /&gt;
|0x9e&lt;br /&gt;
|-&lt;br /&gt;
|setminimap&lt;br /&gt;
|0x1a3&lt;br /&gt;
|0x9f&lt;br /&gt;
|-&lt;br /&gt;
|setthermalbodymaterial&lt;br /&gt;
|0x1a4&lt;br /&gt;
|0xa0&lt;br /&gt;
|-&lt;br /&gt;
|getarraykeys&lt;br /&gt;
|0x1a5&lt;br /&gt;
|0xa1&lt;br /&gt;
|-&lt;br /&gt;
|getfirstarraykey&lt;br /&gt;
|0x1a6&lt;br /&gt;
|0xa2&lt;br /&gt;
|-&lt;br /&gt;
|getnextarraykey&lt;br /&gt;
|0x18c&lt;br /&gt;
|0xa3&lt;br /&gt;
|-&lt;br /&gt;
|sortbydistance&lt;br /&gt;
|0x18d&lt;br /&gt;
|0xa4&lt;br /&gt;
|-&lt;br /&gt;
|tablelookup&lt;br /&gt;
|0x18e&lt;br /&gt;
|0xa5&lt;br /&gt;
|-&lt;br /&gt;
|tablelookupbyrow&lt;br /&gt;
|0x18f&lt;br /&gt;
|0xa6&lt;br /&gt;
|-&lt;br /&gt;
|tablelookupistring&lt;br /&gt;
|0x190&lt;br /&gt;
|0xa7&lt;br /&gt;
|-&lt;br /&gt;
|tablelookupistringbyrow&lt;br /&gt;
|0x191&lt;br /&gt;
|0xa8&lt;br /&gt;
|-&lt;br /&gt;
|tablelookuprownum&lt;br /&gt;
|0x192&lt;br /&gt;
|0xa9&lt;br /&gt;
|-&lt;br /&gt;
|getmissileowner&lt;br /&gt;
|0x193&lt;br /&gt;
|0xaa&lt;br /&gt;
|-&lt;br /&gt;
|magicbullet&lt;br /&gt;
|0x194&lt;br /&gt;
|0xab&lt;br /&gt;
|-&lt;br /&gt;
|getweaponflashtagname&lt;br /&gt;
|0x195&lt;br /&gt;
|0xac&lt;br /&gt;
|-&lt;br /&gt;
|averagepoint&lt;br /&gt;
|0x196&lt;br /&gt;
|0xad&lt;br /&gt;
|-&lt;br /&gt;
|averagenormal&lt;br /&gt;
|0x197&lt;br /&gt;
|0xae&lt;br /&gt;
|-&lt;br /&gt;
|getglass&lt;br /&gt;
|0x1a7&lt;br /&gt;
|0xaf&lt;br /&gt;
|-&lt;br /&gt;
|getglassarray&lt;br /&gt;
|0x1a8&lt;br /&gt;
|0xb0&lt;br /&gt;
|-&lt;br /&gt;
|getglassorigin&lt;br /&gt;
|0x1a9&lt;br /&gt;
|0xb1&lt;br /&gt;
|-&lt;br /&gt;
|isglassdestroyed&lt;br /&gt;
|0x1aa&lt;br /&gt;
|0xb2&lt;br /&gt;
|-&lt;br /&gt;
|destroyglass&lt;br /&gt;
|0x1ab&lt;br /&gt;
|0xb3&lt;br /&gt;
|-&lt;br /&gt;
|deleteglass&lt;br /&gt;
|0x1ac&lt;br /&gt;
|0xb4&lt;br /&gt;
|-&lt;br /&gt;
|getentchannelscount&lt;br /&gt;
|0x1ad&lt;br /&gt;
|0xb5&lt;br /&gt;
|-&lt;br /&gt;
|getentchannelname&lt;br /&gt;
|N/A&lt;br /&gt;
|0xb6&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- objective functions --&amp;gt;&lt;br /&gt;
|objective_add&lt;br /&gt;
|0x1af&lt;br /&gt;
|0xb7&lt;br /&gt;
|-&lt;br /&gt;
|objective_delete&lt;br /&gt;
|0x1b0&lt;br /&gt;
|0xb8&lt;br /&gt;
|-&lt;br /&gt;
|objective_state&lt;br /&gt;
|0x1b1&lt;br /&gt;
|0xb9&lt;br /&gt;
|-&lt;br /&gt;
|objective_icon&lt;br /&gt;
|0x1b2&lt;br /&gt;
|0xba&lt;br /&gt;
|-&lt;br /&gt;
|objective_position&lt;br /&gt;
|0x1b3&lt;br /&gt;
|0xbb&lt;br /&gt;
|-&lt;br /&gt;
|objective_current&lt;br /&gt;
|0x1b4&lt;br /&gt;
|0xbc&lt;br /&gt;
|-&lt;br /&gt;
|objective_onentity&lt;br /&gt;
|0x165&lt;br /&gt;
|0xbd&lt;br /&gt;
|-&lt;br /&gt;
|objective_team&lt;br /&gt;
|0x166&lt;br /&gt;
|0xbe&lt;br /&gt;
|-&lt;br /&gt;
|objective_player&lt;br /&gt;
|0x167&lt;br /&gt;
|0xbf&lt;br /&gt;
|-&lt;br /&gt;
|objective_playerteam&lt;br /&gt;
|0x168&lt;br /&gt;
|0xc0&lt;br /&gt;
|-&lt;br /&gt;
|objective_playerenemyteam&lt;br /&gt;
|0x169&lt;br /&gt;
|0xc1&lt;br /&gt;
|-&lt;br /&gt;
&amp;lt;!-- function list 2 --&amp;gt;&lt;br /&gt;
|iprintln&lt;br /&gt;
|0x16a&lt;br /&gt;
|0xc2&lt;br /&gt;
|-&lt;br /&gt;
|iprintlnbold&lt;br /&gt;
|0x16b&lt;br /&gt;
|0xc3&lt;br /&gt;
|-&lt;br /&gt;
|logstring&lt;br /&gt;
|0x16c&lt;br /&gt;
|0xc4&lt;br /&gt;
|-&lt;br /&gt;
|getent&lt;br /&gt;
|0x16d&lt;br /&gt;
|0xc5&lt;br /&gt;
|-&lt;br /&gt;
|getentarray&lt;br /&gt;
|0x16e&lt;br /&gt;
|0xc6&lt;br /&gt;
|-&lt;br /&gt;
|spawnplane&lt;br /&gt;
|0x16f&lt;br /&gt;
|0xc7&lt;br /&gt;
|-&lt;br /&gt;
|spawnstruct&lt;br /&gt;
|0x170&lt;br /&gt;
|0xc8&lt;br /&gt;
|-&lt;br /&gt;
|spawnhelicopter&lt;br /&gt;
|0x171&lt;br /&gt;
|0xc9&lt;br /&gt;
|-&lt;br /&gt;
|isalive&lt;br /&gt;
|0x172&lt;br /&gt;
|0xca&lt;br /&gt;
|-&lt;br /&gt;
|isspawner&lt;br /&gt;
|0x173&lt;br /&gt;
|0xcb&lt;br /&gt;
|-&lt;br /&gt;
|createattractorent&lt;br /&gt;
|0x174&lt;br /&gt;
|0xcc&lt;br /&gt;
|-&lt;br /&gt;
|createattractororigin&lt;br /&gt;
|0x175&lt;br /&gt;
|0xcd&lt;br /&gt;
|-&lt;br /&gt;
|createrepulsorent&lt;br /&gt;
|0x176&lt;br /&gt;
|0xce&lt;br /&gt;
|-&lt;br /&gt;
|createrepulsororigin&lt;br /&gt;
|0x177&lt;br /&gt;
|0xcf&lt;br /&gt;
|-&lt;br /&gt;
|deleteattractor&lt;br /&gt;
|0x178&lt;br /&gt;
|0xd0&lt;br /&gt;
|-&lt;br /&gt;
|playsoundatpos&lt;br /&gt;
|0x179&lt;br /&gt;
|0xd1&lt;br /&gt;
|-&lt;br /&gt;
|newhudelem&lt;br /&gt;
|0x17a&lt;br /&gt;
|0x1c7&lt;br /&gt;
|-&lt;br /&gt;
|newclienthudelem&lt;br /&gt;
|0x17b&lt;br /&gt;
|0xd2&lt;br /&gt;
|-&lt;br /&gt;
|newteamhudelem&lt;br /&gt;
|0x17c&lt;br /&gt;
|0xd3&lt;br /&gt;
|-&lt;br /&gt;
|newdamageindicatorhudelem&lt;br /&gt;
|N/A&lt;br /&gt;
|0xd4&lt;br /&gt;
|-&lt;br /&gt;
|resettimeout&lt;br /&gt;
|0x17d&lt;br /&gt;
|0xd5&lt;br /&gt;
|-&lt;br /&gt;
|precachefxteamthermal&lt;br /&gt;
|0x17e&lt;br /&gt;
|0xd6&lt;br /&gt;
|-&lt;br /&gt;
|isplayer&lt;br /&gt;
|0x17f&lt;br /&gt;
|0xd7&lt;br /&gt;
|-&lt;br /&gt;
|isplayernumber&lt;br /&gt;
|0x180&lt;br /&gt;
|0xd8&lt;br /&gt;
|-&lt;br /&gt;
|setsunlight&lt;br /&gt;
|0x39&lt;br /&gt;
|0x191&lt;br /&gt;
|-&lt;br /&gt;
|resetsunlight&lt;br /&gt;
|0x3a&lt;br /&gt;
|0x192&lt;br /&gt;
|-&lt;br /&gt;
|setwinningplayer&lt;br /&gt;
|0x181&lt;br /&gt;
|0xd9&lt;br /&gt;
|-&lt;br /&gt;
|setwinningteam&lt;br /&gt;
|0x137&lt;br /&gt;
|0xda&lt;br /&gt;
|-&lt;br /&gt;
|announcement&lt;br /&gt;
|0x138&lt;br /&gt;
|0xdb&lt;br /&gt;
|-&lt;br /&gt;
|clientannouncement&lt;br /&gt;
|0x139&lt;br /&gt;
|0xdc&lt;br /&gt;
|-&lt;br /&gt;
|getteamscore&lt;br /&gt;
|0x13a&lt;br /&gt;
|0xdd&lt;br /&gt;
|-&lt;br /&gt;
|setteamscore&lt;br /&gt;
|0x13b&lt;br /&gt;
|0xde&lt;br /&gt;
|-&lt;br /&gt;
|setclientnamemode&lt;br /&gt;
|0x13c&lt;br /&gt;
|0xdf&lt;br /&gt;
|-&lt;br /&gt;
|updateclientnames&lt;br /&gt;
|0x13d&lt;br /&gt;
|0xe0&lt;br /&gt;
|-&lt;br /&gt;
|getteamplayersalive&lt;br /&gt;
|0x13e&lt;br /&gt;
|0xe1&lt;br /&gt;
|-&lt;br /&gt;
|logprint&lt;br /&gt;
|0x13f&lt;br /&gt;
|0xe2&lt;br /&gt;
|-&lt;br /&gt;
|worldentnumber&lt;br /&gt;
|0x140&lt;br /&gt;
|0xe3&lt;br /&gt;
|-&lt;br /&gt;
|obituary&lt;br /&gt;
|0x141&lt;br /&gt;
|0xe4&lt;br /&gt;
|-&lt;br /&gt;
|positionwouldtelefrag&lt;br /&gt;
|0x142&lt;br /&gt;
|0xe5&lt;br /&gt;
|-&lt;br /&gt;
|canspawn&lt;br /&gt;
|0x143&lt;br /&gt;
|0xe6&lt;br /&gt;
|-&lt;br /&gt;
|getstarttime&lt;br /&gt;
|0x144&lt;br /&gt;
|0xe7&lt;br /&gt;
|-&lt;br /&gt;
|precachestatusicon&lt;br /&gt;
|0x145&lt;br /&gt;
|0xe8&lt;br /&gt;
|-&lt;br /&gt;
|precacheminimapicon&lt;br /&gt;
|0x147&lt;br /&gt;
|0xea&lt;br /&gt;
|-&lt;br /&gt;
|precachempanim&lt;br /&gt;
|0x148&lt;br /&gt;
|0xeb&lt;br /&gt;
|-&lt;br /&gt;
|restart&lt;br /&gt;
|0x149&lt;br /&gt;
|0xec&lt;br /&gt;
|-&lt;br /&gt;
|exitlevel&lt;br /&gt;
|0x14a&lt;br /&gt;
|0xed&lt;br /&gt;
|-&lt;br /&gt;
|addtestclient&lt;br /&gt;
|0x14b&lt;br /&gt;
|0xee&lt;br /&gt;
|-&lt;br /&gt;
|makedvarserverinfo&lt;br /&gt;
|0x14c&lt;br /&gt;
|0xef&lt;br /&gt;
|-&lt;br /&gt;
|setarchive&lt;br /&gt;
|0x14d&lt;br /&gt;
|0xf0&lt;br /&gt;
|-&lt;br /&gt;
|allclientsprint&lt;br /&gt;
|0x14e&lt;br /&gt;
|0xf1&lt;br /&gt;
|-&lt;br /&gt;
|clientprint&lt;br /&gt;
|0x14f&lt;br /&gt;
|0xf2&lt;br /&gt;
|-&lt;br /&gt;
|mapexists&lt;br /&gt;
|0x150&lt;br /&gt;
|0xf3&lt;br /&gt;
|-&lt;br /&gt;
|isvalidgametype&lt;br /&gt;
|0x151&lt;br /&gt;
|0xf4&lt;br /&gt;
|-&lt;br /&gt;
|matchend&lt;br /&gt;
|0x152&lt;br /&gt;
|0xf5&lt;br /&gt;
|-&lt;br /&gt;
|setplayerteamrank&lt;br /&gt;
|0x153&lt;br /&gt;
|0xf6&lt;br /&gt;
|-&lt;br /&gt;
|endparty&lt;br /&gt;
|0x154&lt;br /&gt;
|0xf7&lt;br /&gt;
|-&lt;br /&gt;
|setteamradar&lt;br /&gt;
|0x155&lt;br /&gt;
|0xf8&lt;br /&gt;
|-&lt;br /&gt;
|getteamradar&lt;br /&gt;
|0x156&lt;br /&gt;
|0xf9&lt;br /&gt;
|-&lt;br /&gt;
|setteamradarstrength&lt;br /&gt;
|0x157&lt;br /&gt;
|0xfa&lt;br /&gt;
|-&lt;br /&gt;
|getteamradarstrength&lt;br /&gt;
|0x158&lt;br /&gt;
|0xfb&lt;br /&gt;
|-&lt;br /&gt;
|getuavstrengthmin&lt;br /&gt;
|0x159&lt;br /&gt;
|0xfc&lt;br /&gt;
|-&lt;br /&gt;
|getuavstrengthmax&lt;br /&gt;
|0x106&lt;br /&gt;
|0xfd&lt;br /&gt;
|-&lt;br /&gt;
|getuavstrengthlevelneutral&lt;br /&gt;
|0x107&lt;br /&gt;
|0xfe&lt;br /&gt;
|-&lt;br /&gt;
|getuavstrengthlevelshowenemyfastsweep&lt;br /&gt;
|0x108&lt;br /&gt;
|0xff&lt;br /&gt;
|-&lt;br /&gt;
|getuavstrengthlevelshowenemydirectional&lt;br /&gt;
|0x109&lt;br /&gt;
|0x100&lt;br /&gt;
|-&lt;br /&gt;
|blockteamradar&lt;br /&gt;
|0x10a&lt;br /&gt;
|0x101&lt;br /&gt;
|-&lt;br /&gt;
|unblockteamradar&lt;br /&gt;
|0x10b&lt;br /&gt;
|0x102&lt;br /&gt;
|-&lt;br /&gt;
|isteamradarblocked&lt;br /&gt;
|0x10c&lt;br /&gt;
|0x103&lt;br /&gt;
|-&lt;br /&gt;
|getassignedteam&lt;br /&gt;
|0x10d&lt;br /&gt;
|0x104&lt;br /&gt;
|-&lt;br /&gt;
|setmatchdata&lt;br /&gt;
|0x10e&lt;br /&gt;
|0x105&lt;br /&gt;
|-&lt;br /&gt;
|getmatchdata&lt;br /&gt;
|0x10f&lt;br /&gt;
|0x106&lt;br /&gt;
|-&lt;br /&gt;
|sendmatchdata&lt;br /&gt;
|0x110&lt;br /&gt;
|0x107&lt;br /&gt;
|-&lt;br /&gt;
|clearmatchdata&lt;br /&gt;
|0x111&lt;br /&gt;
|0x108&lt;br /&gt;
|-&lt;br /&gt;
|setmatchdatadef&lt;br /&gt;
|0x112&lt;br /&gt;
|0x109&lt;br /&gt;
|-&lt;br /&gt;
|setmatchclientip&lt;br /&gt;
|0x113&lt;br /&gt;
|0x10a&lt;br /&gt;
|-&lt;br /&gt;
|setmatchdataid&lt;br /&gt;
|0x114&lt;br /&gt;
|0x10b&lt;br /&gt;
|-&lt;br /&gt;
|setclientmatchdata&lt;br /&gt;
|0x115&lt;br /&gt;
|0x10c&lt;br /&gt;
|-&lt;br /&gt;
|getclientmatchdata&lt;br /&gt;
|0x116&lt;br /&gt;
|0x10d&lt;br /&gt;
|-&lt;br /&gt;
|setclientmatchdatadef&lt;br /&gt;
|0x117&lt;br /&gt;
|0x10e&lt;br /&gt;
|-&lt;br /&gt;
|sendclientmatchdata&lt;br /&gt;
|0x118&lt;br /&gt;
|0x10f&lt;br /&gt;
|-&lt;br /&gt;
|getbuildversion&lt;br /&gt;
|0x119&lt;br /&gt;
|0x110&lt;br /&gt;
|-&lt;br /&gt;
|getbuildnumber&lt;br /&gt;
|0x11a&lt;br /&gt;
|0x111&lt;br /&gt;
|-&lt;br /&gt;
|getsystemtime&lt;br /&gt;
|0x11b&lt;br /&gt;
|0x112&lt;br /&gt;
|-&lt;br /&gt;
|getmatchrulesdata&lt;br /&gt;
|0x11c&lt;br /&gt;
|0x113&lt;br /&gt;
|-&lt;br /&gt;
|isusingmatchrulesdata&lt;br /&gt;
|0x11d&lt;br /&gt;
|0x114&lt;br /&gt;
|-&lt;br /&gt;
|kick&lt;br /&gt;
|0x11e&lt;br /&gt;
|0x115&lt;br /&gt;
|-&lt;br /&gt;
|issplitscreen&lt;br /&gt;
|0x11f&lt;br /&gt;
|0x116&lt;br /&gt;
|-&lt;br /&gt;
|setmapcenter&lt;br /&gt;
|0x120&lt;br /&gt;
|0x117&lt;br /&gt;
|-&lt;br /&gt;
|setgameendtime&lt;br /&gt;
|0x121&lt;br /&gt;
|0x118&lt;br /&gt;
|-&lt;br /&gt;
|visionsetnaked&lt;br /&gt;
|0x122&lt;br /&gt;
|0x119&lt;br /&gt;
|-&lt;br /&gt;
|visionsetnight&lt;br /&gt;
|0x123&lt;br /&gt;
|0x11a&lt;br /&gt;
|-&lt;br /&gt;
|visionsetmissilecam&lt;br /&gt;
|0x124&lt;br /&gt;
|0x11b&lt;br /&gt;
|-&lt;br /&gt;
|visionsetthermal&lt;br /&gt;
|0xd9&lt;br /&gt;
|0x11c&lt;br /&gt;
|-&lt;br /&gt;
|visionsetpain&lt;br /&gt;
|0xda&lt;br /&gt;
|0x11d&lt;br /&gt;
|-&lt;br /&gt;
|endlobby&lt;br /&gt;
|0xdb&lt;br /&gt;
|0x11e&lt;br /&gt;
|-&lt;br /&gt;
|ambience&lt;br /&gt;
|0xdc&lt;br /&gt;
|0x11f&lt;br /&gt;
|-&lt;br /&gt;
|getmapcustom&lt;br /&gt;
|0xdd&lt;br /&gt;
|0x120&lt;br /&gt;
|-&lt;br /&gt;
|updateskill&lt;br /&gt;
|0xde&lt;br /&gt;
|0x121&lt;br /&gt;
|-&lt;br /&gt;
|spawnsighttrace&lt;br /&gt;
|0xdf&lt;br /&gt;
|0x122&lt;br /&gt;
|-&lt;br /&gt;
|incrementcounter&lt;br /&gt;
|N/A&lt;br /&gt;
|0x123&lt;br /&gt;
|-&lt;br /&gt;
|getcountertotal&lt;br /&gt;
|N/A&lt;br /&gt;
|0x124&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Field IDs ==&lt;br /&gt;
&#039;&#039;&#039;Client Fields&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!rowspan=&amp;quot;2&amp;quot;|Field&lt;br /&gt;
!colspan=&amp;quot;1&amp;quot;|MW3&lt;br /&gt;
!colspan=&amp;quot;1&amp;quot;|AW&lt;br /&gt;
|-&lt;br /&gt;
!PS3 ID&lt;br /&gt;
!PS3 ID&lt;br /&gt;
|-&lt;br /&gt;
| name&lt;br /&gt;
| 0x2D1&lt;br /&gt;
| 0x2AF&lt;br /&gt;
|-&lt;br /&gt;
| sessionteam  &lt;br /&gt;
| 0x2D2&lt;br /&gt;
| 0x3C1&lt;br /&gt;
|-&lt;br /&gt;
| sessionstate&lt;br /&gt;
| 0x2D3&lt;br /&gt;
| 0x3C0&lt;br /&gt;
|-&lt;br /&gt;
| maxhealth&lt;br /&gt;
| 0x2D4&lt;br /&gt;
| 0x279&lt;br /&gt;
|-&lt;br /&gt;
| score&lt;br /&gt;
| 0x2D5&lt;br /&gt;
| 0x394&lt;br /&gt;
|-&lt;br /&gt;
| deaths&lt;br /&gt;
| 0x2D6&lt;br /&gt;
| 0x112&lt;br /&gt;
|-&lt;br /&gt;
| extrascore0&lt;br /&gt;
|&lt;br /&gt;
| 0x16D&lt;br /&gt;
|-&lt;br /&gt;
| extrascore1&lt;br /&gt;
|&lt;br /&gt;
| 0x16E&lt;br /&gt;
|-&lt;br /&gt;
| killstreakcount&lt;br /&gt;
|&lt;br /&gt;
| 0x242&lt;br /&gt;
|-&lt;br /&gt;
| objective&lt;br /&gt;
|&lt;br /&gt;
| 0x2DA&lt;br /&gt;
|-&lt;br /&gt;
| statusicon&lt;br /&gt;
| 0x2D7&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| headicon&lt;br /&gt;
| 0x2D8&lt;br /&gt;
| 0x1E8&lt;br /&gt;
|-&lt;br /&gt;
| headiconteam&lt;br /&gt;
| 0x2D9&lt;br /&gt;
| 0x1E9&lt;br /&gt;
|-&lt;br /&gt;
| kills&lt;br /&gt;
| 0x2DB&lt;br /&gt;
| 0x240&lt;br /&gt;
|-&lt;br /&gt;
| assists&lt;br /&gt;
| 0x2DC&lt;br /&gt;
| 0x53&lt;br /&gt;
|-&lt;br /&gt;
| hasradar&lt;br /&gt;
| 0x2DD&lt;br /&gt;
| 0x1E4&lt;br /&gt;
|-&lt;br /&gt;
| isradarblocked &lt;br /&gt;
| 0x2DE&lt;br /&gt;
| 0x217&lt;br /&gt;
|-&lt;br /&gt;
| radarstrength&lt;br /&gt;
| 0x2DF&lt;br /&gt;
| 0x357&lt;br /&gt;
|-&lt;br /&gt;
| radarshowenemydirection&lt;br /&gt;
| 0x2E0&lt;br /&gt;
| 0x356&lt;br /&gt;
|-&lt;br /&gt;
| radarmode&lt;br /&gt;
| 0x2E1&lt;br /&gt;
| 0x355&lt;br /&gt;
|-&lt;br /&gt;
| enemyradarmode&lt;br /&gt;
|&lt;br /&gt;
| 0x14D&lt;br /&gt;
|-&lt;br /&gt;
| forcespectatorclient&lt;br /&gt;
| 0x2E2&lt;br /&gt;
| 0x19C&lt;br /&gt;
|-&lt;br /&gt;
| killcamentity&lt;br /&gt;
| 0x2E3&lt;br /&gt;
| 0x23E&lt;br /&gt;
|-&lt;br /&gt;
| killcamentitylookat&lt;br /&gt;
| 0x2E4&lt;br /&gt;
| 0x23F&lt;br /&gt;
|-&lt;br /&gt;
| spectatekillcam&lt;br /&gt;
|&lt;br /&gt;
| 0x3E3&lt;br /&gt;
|-&lt;br /&gt;
| archivetime&lt;br /&gt;
| 0x2E5&lt;br /&gt;
| 0x4D&lt;br /&gt;
|-&lt;br /&gt;
| psoffsettime &lt;br /&gt;
| 0x2E6&lt;br /&gt;
| 0x352&lt;br /&gt;
|-&lt;br /&gt;
| pers&lt;br /&gt;
| 0x2E7&lt;br /&gt;
| 0x311&lt;br /&gt;
|-&lt;br /&gt;
| game_extrainfo&lt;br /&gt;
|&lt;br /&gt;
| 0x1B5&lt;br /&gt;
|-&lt;br /&gt;
| playercardpatch&lt;br /&gt;
|&lt;br /&gt;
| 0x325&lt;br /&gt;
|-&lt;br /&gt;
| playercardbackground&lt;br /&gt;
|&lt;br /&gt;
| 0x324&lt;br /&gt;
|}&lt;br /&gt;
&#039;&#039;&#039;Entity Fields&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Field Name !! PS3 ID&lt;br /&gt;
|-&lt;br /&gt;
| code_classname || 0x2C3&lt;br /&gt;
|-&lt;br /&gt;
| classname || 0x2C4&lt;br /&gt;
|-&lt;br /&gt;
| origin || 0x2C5&lt;br /&gt;
|-&lt;br /&gt;
| model || 0x2C6&lt;br /&gt;
|-&lt;br /&gt;
| spawnflags || 0x2C7&lt;br /&gt;
|-&lt;br /&gt;
| target || 0x2C8&lt;br /&gt;
|-&lt;br /&gt;
| targetname || 0x2C9&lt;br /&gt;
|-&lt;br /&gt;
| count || 0x2CA&lt;br /&gt;
|-&lt;br /&gt;
| health || 0x2CB&lt;br /&gt;
|-&lt;br /&gt;
| dmg || 0x2CC&lt;br /&gt;
|-&lt;br /&gt;
| angles || 0x2CD&lt;br /&gt;
|-&lt;br /&gt;
| birthtime || 0x2CE&lt;br /&gt;
|-&lt;br /&gt;
| script_linkname || 0x2CF&lt;br /&gt;
|-&lt;br /&gt;
| slidevelocity || 0x2D0&lt;br /&gt;
|}&lt;br /&gt;
&#039;&#039;&#039;Vehicle Fields&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Header text !! Header text&lt;br /&gt;
|-&lt;br /&gt;
| veh_speed || 0x2FF&lt;br /&gt;
|-&lt;br /&gt;
| veh_pathspeed || 0x300&lt;br /&gt;
|-&lt;br /&gt;
| veh_transmission || 0x301&lt;br /&gt;
|-&lt;br /&gt;
| veh_pathdir || 0x302&lt;br /&gt;
|-&lt;br /&gt;
| veh_pathtype || 0x303&lt;br /&gt;
|-&lt;br /&gt;
| veh_topspeed || 0x304&lt;br /&gt;
|-&lt;br /&gt;
| veh_brake || 0x305&lt;br /&gt;
|-&lt;br /&gt;
| veh_throttle || 0x306&lt;br /&gt;
|}&lt;br /&gt;
&#039;&#039;&#039;Hudelem Fields&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot;|Field&lt;br /&gt;
! colspan=&amp;quot;1&amp;quot;|MW3&lt;br /&gt;
! colspan=&amp;quot;1&amp;quot;|AW&lt;br /&gt;
|-&lt;br /&gt;
! PS3 ID&lt;br /&gt;
! PS3 ID&lt;br /&gt;
|-&lt;br /&gt;
| x&lt;br /&gt;
| 0x2E8&lt;br /&gt;
| 0x534&lt;br /&gt;
|-&lt;br /&gt;
| y&lt;br /&gt;
| 0x2E9&lt;br /&gt;
| 0x53C&lt;br /&gt;
|-&lt;br /&gt;
| z&lt;br /&gt;
| 0x2EA&lt;br /&gt;
| 0x53F&lt;br /&gt;
|-&lt;br /&gt;
| fontscale&lt;br /&gt;
| 0x2EB&lt;br /&gt;
| 0x190&lt;br /&gt;
|-&lt;br /&gt;
| font&lt;br /&gt;
| 0x2EC&lt;br /&gt;
| 0x18F&lt;br /&gt;
|-&lt;br /&gt;
| alignx&lt;br /&gt;
| 0x2ED&lt;br /&gt;
| 0x30&lt;br /&gt;
|-&lt;br /&gt;
| aligny&lt;br /&gt;
| 0x2EE&lt;br /&gt;
| 0x31&lt;br /&gt;
|-&lt;br /&gt;
| horzalign&lt;br /&gt;
| 0x2EF&lt;br /&gt;
| 0x1F8&lt;br /&gt;
|-&lt;br /&gt;
| vertalign&lt;br /&gt;
| 0x2F0&lt;br /&gt;
| 0x504&lt;br /&gt;
|-&lt;br /&gt;
| color&lt;br /&gt;
| 0x2F1&lt;br /&gt;
| 0xC9&lt;br /&gt;
|-&lt;br /&gt;
| alpha &lt;br /&gt;
| 0x2F2&lt;br /&gt;
| 0x3B&lt;br /&gt;
|-&lt;br /&gt;
| label &lt;br /&gt;
| 0x2F3&lt;br /&gt;
| 0x249&lt;br /&gt;
|-&lt;br /&gt;
| sort &lt;br /&gt;
| 0x2F4&lt;br /&gt;
| 0x3D9&lt;br /&gt;
|-&lt;br /&gt;
| foreground &lt;br /&gt;
| 0x2F5&lt;br /&gt;
| 0x19E&lt;br /&gt;
|-&lt;br /&gt;
| lowresbackground &lt;br /&gt;
| 0x2F6&lt;br /&gt;
| 0x26B&lt;br /&gt;
|-&lt;br /&gt;
| hidewhendead &lt;br /&gt;
| 0x2F7&lt;br /&gt;
| 0x1F0&lt;br /&gt;
|-&lt;br /&gt;
| hidewheninmenu &lt;br /&gt;
| 0x2F8&lt;br /&gt;
| 0x1F2&lt;br /&gt;
|-&lt;br /&gt;
| glowcolor &lt;br /&gt;
| 0x2FA&lt;br /&gt;
| 0x1C4&lt;br /&gt;
|-&lt;br /&gt;
| glowalpha &lt;br /&gt;
| 0x2FB&lt;br /&gt;
| 0x8C&lt;br /&gt;
|-&lt;br /&gt;
| archived &lt;br /&gt;
| 0x2FC&lt;br /&gt;
| 0x4C&lt;br /&gt;
|-&lt;br /&gt;
| showinkillcam&lt;br /&gt;
|&lt;br /&gt;
| 0x3C8&lt;br /&gt;
|-&lt;br /&gt;
| hidein3rdperson &lt;br /&gt;
| 0x2FD&lt;br /&gt;
| 0x1EF&lt;br /&gt;
|-&lt;br /&gt;
| positioninworld&lt;br /&gt;
|&lt;br /&gt;
| 0x333&lt;br /&gt;
|-&lt;br /&gt;
| hidewhenindemo &lt;br /&gt;
| 0x2FE&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| enablehudlighting&lt;br /&gt;
|&lt;br /&gt;
| 0x140&lt;br /&gt;
|}&lt;br /&gt;
&#039;&#039;&#039;Entity Array Fields&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Field Name !! PS3 ID&lt;br /&gt;
|-&lt;br /&gt;
| targetname || 0x2C9&lt;br /&gt;
|-&lt;br /&gt;
| target || 0x2C8&lt;br /&gt;
|-&lt;br /&gt;
| script_linkname || 0x2CF&lt;br /&gt;
|-&lt;br /&gt;
| script_noteworthy || 0x307&lt;br /&gt;
|-&lt;br /&gt;
| origin || 0x2C5&lt;br /&gt;
|-&lt;br /&gt;
| angles || 0x2CD&lt;br /&gt;
|-&lt;br /&gt;
| speed || 0x308&lt;br /&gt;
|-&lt;br /&gt;
| lookahead || 0x309&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Therifboy</name></author>
	</entry>
	<entry>
		<id>https://codresearch.dev/index.php?title=ScriptParseTree_Asset&amp;diff=426</id>
		<title>ScriptParseTree Asset</title>
		<link rel="alternate" type="text/html" href="https://codresearch.dev/index.php?title=ScriptParseTree_Asset&amp;diff=426"/>
		<updated>2014-05-04T18:06:21Z</updated>

		<summary type="html">&lt;p&gt;Therifboy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
[[Category:Assets]]&lt;br /&gt;
[[Category:BO2]]&lt;br /&gt;
The ScriptParseTree asset is a new asset in Black Ops 2 and this is the only Call of Duty game it has appeared in so far. This is Treyarch&#039;s answer to GSCs (Keep in mind that on Black Ops 1 GSCs were still [[:Rawfile Asset|rawfiles]]). Compared to IW&#039;s equivalent scriptfile asset, the ScriptParseTree has proven to give slightly more information and thus are easier to reverse. The basic structure is identical to the rawfiles&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
struct ScriptParseTree&lt;br /&gt;
{&lt;br /&gt;
  const char *name;&lt;br /&gt;
  int len;&lt;br /&gt;
  const char *buffer;&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Simply an uncompressed buffer holding the GSC data. The binary data is then passed to the GSC Virtual Machine (VM) to be ran. Now for the header of the binary data&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#define GSCMagic = 0x804753430D0A0006&lt;br /&gt;
&lt;br /&gt;
struct GSCHeader&lt;br /&gt;
{&lt;br /&gt;
  __int64 magic;&lt;br /&gt;
       int unknown1;&lt;br /&gt;
  unsigned int includeSectionOffset;&lt;br /&gt;
  unsigned int usingAnimtreeSectionOffset;&lt;br /&gt;
  unsigned int executionDataSectionOffset;&lt;br /&gt;
  unsigned int argumentSectionOffset;&lt;br /&gt;
  unsigned int functionDeclSectionOffset;&lt;br /&gt;
  unsigned int callFunctionSectionOffset;&lt;br /&gt;
       char unknown2[0xC];&lt;br /&gt;
  unsigned short nameOffset;&lt;br /&gt;
  unsigned short totalArgumentCount;&lt;br /&gt;
  unsigned short functionDeclCount;&lt;br /&gt;
  unsigned short callFunctionCount;&lt;br /&gt;
       int unknown3;&lt;br /&gt;
  byte includeSectionCount;&lt;br /&gt;
  byte usingAnimtreeCount;&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Following the header is a section of null terminated strings (undetermined size/count). This section is also padded at the end to a 4-byte buffer. The following sections will reference back to this section when a string is used. Keep in mind that the offsets are simply just an offset in the buffer.&lt;br /&gt;
=== Include Section ===&lt;br /&gt;
The first known section after the string table is the include section, and this should be the first section dumped as well. This section is used to replace the following in a raw gsc&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#include maps\mp\_utility;&lt;br /&gt;
#include common_scripts\utility;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
The include section is probably the easiest section to reverse. Each include exists as a single integer which holds the offset of the include&#039;s string in the buffer. &lt;br /&gt;
=== Using Animtree Section ===&lt;br /&gt;
Although this section doesn&#039;t follow the include section, it is what needs to be dumped second. When a GSC wants to directly access and animtree, then the following code is added (for animtree &amp;quot;mp_vehicles&amp;quot;)&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#using_animtree( &amp;quot;mp_vehicles&amp;quot; );&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Then animations can be accessed from the tree as follows (Using the %)&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
destructible_anims[ &amp;quot;car&amp;quot; ] = %veh_car_destroy;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Knowing this, the binary data section can be reversed fairly easily. The structure for their definitions in this section is&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
struct Reference&lt;br /&gt;
{&lt;br /&gt;
  unsigned short name;&lt;br /&gt;
  unsigned short xrefOffset;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct AnimTree&lt;br /&gt;
{&lt;br /&gt;
	unsigned short nameOffset;&lt;br /&gt;
	unsigned short pathOffset; //Paths do not exist for animtrees (so far)&lt;br /&gt;
	unsigned short referenceCount;&lt;br /&gt;
	Reference references[0];&lt;br /&gt;
	&lt;br /&gt;
	static AnimTree* create(unsigned short referenceCount)&lt;br /&gt;
	{&lt;br /&gt;
		AnimTree* temp = (AnimTree*)malloc(sizeof(AnimTree) + referenceCount * sizeof(Reference));&lt;br /&gt;
		temp-&amp;gt;referenceCount = referenceCount;&lt;br /&gt;
		return temp;&lt;br /&gt;
	}&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
XRefs are explained in better detail in the code section. Each animtree thats included will have an AnimTree struct, and every time an animation is used it will be defined in the references.&lt;br /&gt;
=== Argument Section ===&lt;br /&gt;
The argument section not only defines any function arguments that are defined with function declarations, but any local variable a function might create. Although they are defined the same, the difference between the two is highlighted in the code section. Each argument will be defined as follows&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
struct Argument&lt;br /&gt;
{&lt;br /&gt;
	unsigned short nameOffset;&lt;br /&gt;
	unsigned char referenceCount;&lt;br /&gt;
		signed char unknown;&lt;br /&gt;
	unsigned int references[0];&lt;br /&gt;
  &lt;br /&gt;
	static Argument* create(unsigned char referenceCount)&lt;br /&gt;
	{&lt;br /&gt;
		Argument* temp = (Argument*)malloc(sizeof(Argument) + referenceCount * sizeof(unsigned int));&lt;br /&gt;
		temp-&amp;gt;referenceCount = referenceCount;&lt;br /&gt;
		return temp;&lt;br /&gt;
	}&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
The references will explained in more detail in the code section.&lt;br /&gt;
=== Function Call Section ===&lt;br /&gt;
If a function is called by a function in this GSC, it must be defined here in the function call section, even if that function is located inside this GSC. First the struct&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
struct FunctionCall&lt;br /&gt;
{&lt;br /&gt;
  unsigned short nameOffset;&lt;br /&gt;
  unsigned short pathOffset;&lt;br /&gt;
  unsigned short referenceCount;&lt;br /&gt;
  byte paramCount;&lt;br /&gt;
  byte flag;&lt;br /&gt;
  unsigned int references[0];&lt;br /&gt;
  &lt;br /&gt;
  static FunctionCall* create(unsigned short referenceCount)&lt;br /&gt;
  {&lt;br /&gt;
	FunctionCall* temp = (FunctionCall*)malloc(sizeof(FunctionCall) + referenceCount * sizeof(unsigned int));&lt;br /&gt;
	temp-&amp;gt;referenceCount = referenceCount;&lt;br /&gt;
	return temp;&lt;br /&gt;
  }&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
NameOffset obviously holds the name of the called function. References are explained in the code section. If the function is not located in this GSC or in a &amp;quot;using&amp;quot; GSC, then the function must have a path with the name of the GSC that it is defined in, and this is where the pathOffset points to. eg&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
thread maps\mp\gametypes\_spawning::init();&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
=== Function Declaration Section ===&lt;br /&gt;
This is the section that will be cycled through when dumping the GSC. Every function that is defined in this GSC is here. &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
struct FunctionDeclaration&lt;br /&gt;
{&lt;br /&gt;
       int unknown1;&lt;br /&gt;
  unsigned int executionDataOffset;&lt;br /&gt;
  unsigned short nameOffset;&lt;br /&gt;
       byte unknown2;&lt;br /&gt;
  byte argumentCount;&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
The executionDataOffset is an offset in the code section defining where this function begins.&lt;br /&gt;
=== Executable Data ===&lt;br /&gt;
This section is by far the trickiest section. This is where the actual code the functions are compiled into is stored. The first thing that will be needed is a list of operation codes (OPcodes). These opcodes should be the same for all systems.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
enum OPCodes : char&lt;br /&gt;
{&lt;br /&gt;
  OP_Return			= 0x1,&lt;br /&gt;
  OP_GetUndefined		= 0x2,&lt;br /&gt;
  OP_GetZero			= 0x3,&lt;br /&gt;
  OP_GetByte			= 0x4,&lt;br /&gt;
  OP_GetNegByte			= 0x5,&lt;br /&gt;
  OP_GetUnsignedShort		= 0x6,&lt;br /&gt;
  OP_GetNegUnsignedShort     	= 0x7,&lt;br /&gt;
  OP_GetInteger			= 0x8,&lt;br /&gt;
  OP_GetFloat			= 0x9,&lt;br /&gt;
  OP_GetString			= 0xA,&lt;br /&gt;
  OP_GetIString			= 0xB,&lt;br /&gt;
  OP_GetLevelObject		= 0xD,&lt;br /&gt;
  OP_GetSelf			= 0xF,&lt;br /&gt;
  OP_GetLevel			= 0x10,&lt;br /&gt;
  OP_GetGame			= 0x11,&lt;br /&gt;
  OP_GetAnimation		= 0x13,&lt;br /&gt;
  OP_GetGameRef			= 0x14,&lt;br /&gt;
  OP_GetFunction		= 0x15,&lt;br /&gt;
  OP_CreateLocalVariable	= 0x17,&lt;br /&gt;
  OP_EvalLocalVariableCached1   = 0x19,&lt;br /&gt;
  OP_EvalArray			= 0x1A,&lt;br /&gt;
  OP_EvalArrayRef		= 0x1C,&lt;br /&gt;
  OP_ClearArray			= 0x1D,&lt;br /&gt;
  OP_EmptyArray			= 0x1E,&lt;br /&gt;
  OP_GetSelfObject		= 0x1F,&lt;br /&gt;
  OP_EvalFieldVariable		= 0x20,&lt;br /&gt;
  OP_EvalFieldVariableRef	= 0x21,&lt;br /&gt;
  OP_ClearFieldVariable		= 0x22,&lt;br /&gt;
  OP_24 = 0x24,&lt;br /&gt;
  OP_25 = 0x25,&lt;br /&gt;
  OP_checkclearparams		= 0x26,&lt;br /&gt;
  OP_EvalLocalVariableRefCached = 0x27,&lt;br /&gt;
  OP_SetVariableField		= 0x28,&lt;br /&gt;
  OP_CallBuiltin		= 0x29,&lt;br /&gt;
  OP_ScriptMethodCall		= 0x2A,&lt;br /&gt;
  OP_wait			= 0x2B,&lt;br /&gt;
  OP_waittillFrameEnd		= 0x2C,&lt;br /&gt;
  OP_PreScriptCall		= 0x2D,&lt;br /&gt;
  OP_ScriptFunctionCall		= 0x2E,&lt;br /&gt;
  OP_ScriptFunctionCallPointer	= 0x2F,&lt;br /&gt;
  OP_ScriptMethodCall2		= 0x30,&lt;br /&gt;
  OP_ScriptMethodCallPointer	= 0x31,&lt;br /&gt;
  OP_ScriptThreadCall		= 0x32,&lt;br /&gt;
  OP_ScriptThreadCallPointer	= 0x33,&lt;br /&gt;
  OP_ScriptMethodThreadCall	= 0x34,&lt;br /&gt;
  OP_ScriptMethodThreadCallPointer = 0x35,&lt;br /&gt;
  OP_clearparams		= 0x36,&lt;br /&gt;
  OP_37 = 0x37,&lt;br /&gt;
  OP_BoolNot			= 0x39,&lt;br /&gt;
  OP_JumpOnFalse		= 0x3B,&lt;br /&gt;
  OP_JumpOnTrue			= 0x3C,&lt;br /&gt;
  OP_JumpOnFalseExpr		= 0x3D,&lt;br /&gt;
  OP_JumpOnTrueExpr		= 0x3E,&lt;br /&gt;
  OP_jump			= 0x3F,&lt;br /&gt;
  OP_inc			= 0x41,&lt;br /&gt;
  OP_dec			= 0x42,&lt;br /&gt;
  OP_bit_or			= 0x43,&lt;br /&gt;
  OP_bit_and			= 0x45,&lt;br /&gt;
  OP_equality			= 0x46,&lt;br /&gt;
  OP_inequality			= 0x47,&lt;br /&gt;
  OP_less			= 0x48,&lt;br /&gt;
  OP_greater			= 0x49,&lt;br /&gt;
  OP_less_equal			= 0x4A,&lt;br /&gt;
  OP_greater_equal		= 0x4B,&lt;br /&gt;
  OP_plus			= 0x4E,&lt;br /&gt;
  OP_minus			= 0x4F,   &lt;br /&gt;
  OP_multiply			= 0x50,&lt;br /&gt;
  OP_divide			= 0x51,&lt;br /&gt;
  OP_mod			= 0x52,&lt;br /&gt;
  OP_size			= 0x53,&lt;br /&gt;
  OP_waittillmatch		= 0x54,&lt;br /&gt;
  OP_waittill			= 0x55,&lt;br /&gt;
  OP_notify			= 0x56,&lt;br /&gt;
  OP_endon			= 0x57,&lt;br /&gt;
  OP_voidCodepos		= 0x58,&lt;br /&gt;
  OP_switch			= 0x59,&lt;br /&gt;
  OP_endswitch			= 0x5A,&lt;br /&gt;
  OP_vector			= 0x5B,&lt;br /&gt;
  OP_5C = 0x5C,&lt;br /&gt;
  OP_5E = 0x5E,&lt;br /&gt;
  OP_5F = 0x5F,&lt;br /&gt;
  OP_60 = 0x60,&lt;br /&gt;
  OP_61 = 0x61,&lt;br /&gt;
  OP_62 = 0x62,&lt;br /&gt;
  OP_63 = 0x63,&lt;br /&gt;
  OP_64 = 0x64,&lt;br /&gt;
  OP_65 = 0x65,&lt;br /&gt;
  OP_66 = 0x66,&lt;br /&gt;
  OP_67 = 0x67,&lt;br /&gt;
  OP_68 = 0x68,&lt;br /&gt;
  OP_69 = 0x69,&lt;br /&gt;
  OP_6A = 0x6A,&lt;br /&gt;
  OP_70 = 0x70,&lt;br /&gt;
  OP_71 = 0x71,&lt;br /&gt;
  OP_7B = 0x7B,&lt;br /&gt;
  OP_count			= 0x7C,&lt;br /&gt;
  OP_NOP			= 0x7F&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Notice that 0x7B is the highest opcode, but 0x7F is still valid. In truth anything over 0x7B will register as NOP. The executable does some odd jumping around for each OP code, so a recap of each OP code will try to be added. In the following functions &amp;quot;currentFunctionDataOffset&amp;quot; is defined as an integer that points to the current OP code being read. Keep in mind that an OP code is read, the data offset is increased by 1, and then the following code is ran. OP codes are parsed in the order they are read, but if a dump is being done then parts are going to be dumped in reverse order. Here is an example of a series of OP codes...&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
OP_PreScriptCall&lt;br /&gt;
OP_GetString		&amp;quot;1350&amp;quot;&lt;br /&gt;
OP_GetString		&amp;quot;scr_veh_health_tank&amp;quot;&lt;br /&gt;
OP_CallBuiltin 		2, &amp;quot;setdvar&amp;quot;&lt;br /&gt;
OP_clearparams&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
This would be the &amp;quot;asm&amp;quot; of the GSC, and would look like this...&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
setdvar( &amp;quot;scr_veh_health_tank&amp;quot;, &amp;quot;1350&amp;quot; );&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
==== OP_Return ====&lt;br /&gt;
The return OP is exactly as expected. Any OP codes in the stack go after a &amp;quot;return&amp;quot;. There is no data skipped, it is simply a 1 byte opcode. Keep in mind that if the game reaches a return, it leaves the function however for a complete dump, data must continue to be read and sometimes this data is unnecessary.&lt;br /&gt;
==== OP_GetUndefined &amp;amp; OP_GetZero ====&lt;br /&gt;
This simply represents the &amp;quot;undefined&amp;quot;/0 element in GSCs. It is a simple 1 byte opcode, and once read it is put right onto the stack. When dumping from the stack, simply print &amp;quot;undefined&amp;quot;/0 and continue.&lt;br /&gt;
==== OP_GetByte &amp;amp; OP_GetNegByte ====&lt;br /&gt;
These are used to hold any numbers that are small enough to be held in 1 byte. These are 2 byte opcode in that the first byte is the opcode and the second byte is an unsigned value. The opcode is added to the stack once read. When dumping from the stack the value is simply printed and then continued. Keep in mind that OP_GetNegByte should get a negative symbol before the value is printed.&lt;br /&gt;
==== OP_GetUnsignedShort &amp;amp; OP_GetNegUnsignedShort ====&lt;br /&gt;
These are used to hold any numbers that are small enough to be held in 2 byte. After reading the opcode, the following is used to determine the offset of the unsigned short value&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
(++currentFunctionDataOffset) &amp;amp;= 0xFFFFFFFE;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Then &amp;quot;currentFunctionDataOffset&amp;quot; will be the offset of the unsigned short value to use. Then skip another 2 bytes for that value to continue reading. The opcode is added to the stack once read. When dumping from the stack the value is simply printed and then continued. Keep in mind that OP_GetNegUnsignedShort should get a negative symbol before the value is printed.&lt;br /&gt;
==== OP_GetInteger &amp;amp; OP_GetFloat ====&lt;br /&gt;
OP_GetInteger is used for any numbers that are large enough to warrant a signed integer, while OP_GetFloat is used for bigger numbers and decimals. After reading the opcode, the following is used to determine the offset of the value to get&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
currentFunctionDataOffset += 3;&lt;br /&gt;
currentFunctionDataOffset &amp;amp;= 0xFFFFFFFC;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
At this point &amp;quot;currentFunctionDataOffset&amp;quot; will be the offset of the value to get, then skip another 4 bytes past the value to continue reading. The opcode is then added to the stack. When dumping the value is simply printed and then continued;&lt;br /&gt;
==== OP_GetString &amp;amp; OP_GetIString ====&lt;br /&gt;
These are very clearly used to reference strings in code. Strings are found by their references. To get the offset of the reference use the following&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
(++currentFunctionDataOffset) &amp;amp;= 0xFFFFFFFE;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
In the argument section should be an argument with a reference that is equal to &amp;quot;currentFunctionDataOffset&amp;quot; at this point. The name of the argument is the offset of the string to use in the string pool from the beginning of the GSC. Add another 2 to currentFunctionDataOffset to skip past the reference to continue reading. Keep in mind that OP_GetIString is used to get localized strings, and a &amp;amp; should be a added before the quotes.&lt;br /&gt;
==== OP_GetLevelObject &amp;amp; OP_GetLevel &amp;amp; OP_GetSelf &amp;amp; OP_GetSelfObject &amp;amp; OP_GetGame &amp;amp; OP_GetGameRef ====&lt;br /&gt;
All of these are simple 1 byte opcodes that are added to the stack once they are read. They represent (and should be printed as) the &amp;quot;game&amp;quot;, &amp;quot;level&amp;quot; and &amp;quot;self&amp;quot; objects in GSC code.&lt;br /&gt;
==== OP_GetAnimation ====&lt;br /&gt;
These are used to reference animations in an animtree that was included to this GSC. The name of the animation is found by a reference. To get the offset of the reference&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
currentFunctionDataOffset += 3;&lt;br /&gt;
currentFunctionDataOffset &amp;amp;= 0xFFFFFFFC;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
There should be an animtree in the animtree include section that has an animation with a reference equal to &amp;quot;currentFunctionDataOffset&amp;quot; at this point. Add another 4 bytes to skip past the reference to continue reading opcodes. After this is read it is added to the stack. When dumping the reference animation name should be found and dumped (without quotes) preceeded by a % sign.&lt;br /&gt;
==== OP_GetFunction ====&lt;br /&gt;
This is used to reference a function without calling it. This allows you to set a variable to a function, and then call the variable later. There should be a function call with a reference equal to &amp;quot;currentFunctionDataOffset&amp;quot;, and this is the function to use. This is then added to the stack. After that the following code is performed&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
currentFunctionDataOffset += 3;&lt;br /&gt;
currentFunctionDataOffset &amp;amp;= 0xFFFFFFFC;&lt;br /&gt;
currentFunctionDataOffset += 4;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
to continue reading. When dumping the function name should be printed after &amp;quot;::&amp;quot;.&lt;br /&gt;
==== OP_CreateLocalVariable ====&lt;br /&gt;
This opcode is used at the beginning of any function with arguments or local variables to define them. After the opcode is a single byte that is the number to define. Each variable argument is found by getting the reference for it in the argument section. To get the offset of each reference&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
(++currentFunctionDataOffset) &amp;amp;= 0xFFFFFFFE;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
That gets ran before to find a reference offset. There should be a argument with a reference equal to the &amp;quot;currentFunctionDataOffset&amp;quot;. Then 2 is added to skip past the current reference before the above is started again. The function declaration states the number of arguments, any extra are local variables. Keep in mind the stack should be clear after this is ran.&lt;br /&gt;
==== OP_EvalLocalVariableCached1 &amp;amp; OP_EvalLocalVariableRefCached ====&lt;br /&gt;
This is a simple 2 byte opcode used to reference an argument or local variable. The second byte is the index of the local variable to use, defined by OP_CreateLocalVariable. This is then added to the stack to be dumped. To dump the local variable must be looked up, the argument found and the name referenced.&lt;br /&gt;
==== OP_EvalArray &amp;amp; OP_EvalArrayRef ====&lt;br /&gt;
These are simple 1 byte opcodes used to reference elements in an array. It is simply added to the stack to be dumped. When dumping, the next entity on the stack is the array to use and the next entity is the index in the array (Indexes are not always numbers).&lt;br /&gt;
==== OP_ClearArray ====&lt;br /&gt;
This is a 1 byte opcode used to set an array element to &amp;quot;undefined&amp;quot;. This is not added to the stack, instead the stack is processed. The first entity on the stack is the array to use and the second is the array index. This element is then set to undefined. At the end of this, the stack should be empty.&lt;br /&gt;
==== OP_EmptyArray ====&lt;br /&gt;
This is a simple 1 byte opcode used to denote an empty array (&amp;quot;[]&amp;quot;). It is added right to the stack and simply printed when dumping. &lt;br /&gt;
==== OP_EvalFieldVariable &amp;amp; OP_EvalFieldVariableRef ====&lt;br /&gt;
These opcodes are used to reference any field variable. The names of the field variable is found by the offset of a reference. To find the offset of the reference&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
(++currentFunctionDataOffset) &amp;amp;= 0xFFFFFFFE;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
There should then be an argument in the argument section that has a reference equal to &amp;quot;currentFunctionDataOffset&amp;quot;. Skip another 2 bytes past the reference to continue reading opcodes. The opcode is then added to the stack to be dumped later. The next entity on the stack is the item the field variable is for. &lt;br /&gt;
==== OP_ClearFieldVariable ====&lt;br /&gt;
This opcode is used to set a field variable element to &amp;quot;undefined&amp;quot;. The name of the field variable is found by the offset of a reference. To find the offset of a reference&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
(++currentFunctionDataOffset) &amp;amp;= 0xFFFFFFFE;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
There should then be an argument in the argument section that has a reference equal to &amp;quot;currentFunctionDataOffset&amp;quot;. Skip another 2 bytes past the reference to continue reading opcodes. This opcode is not added to the stack, instead the stack is processed. The only entity on the stack should be the item the field variable is for. Once this is processed the stack should be empty. &lt;br /&gt;
==== OP_checkclearparams &amp;amp; OP_25 ====&lt;br /&gt;
Used at the beginning of a function with no arguments. Clears the stack without processing it. &lt;br /&gt;
==== OP_SetVariableField ====&lt;br /&gt;
This is a 1 byte opcode used to set an entity to anything else. This is not added to the stack, instead the stack is processed. The first entity on the stack is the entity to set (left side of the &amp;quot;=&amp;quot; sign) with the second being the entity setting with (right side). At the end of this, the stack should be empty.&lt;br /&gt;
==== OP_CallBuiltin ====&lt;br /&gt;
This opcode is used to call a GSC function that is predefined in the executable. The name of the GSC function is found by a reference. The offset of the reference is actually the offset of this opcode. In the function call section should be a definition with a reference to this opcode. This opcode is then added to the stack to be dumped. When dumping, there should be an entity on the stack for each expected argument. To get to the next opcode, perform the following&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
currentFunctionDataOffset += 4;&lt;br /&gt;
currentFunctionDataOffset &amp;amp;= 0xFFFFFFFC;&lt;br /&gt;
currentFunctionDataOffset += 4;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Before adding the last 4, &amp;quot;currentFunctionDataOffset&amp;quot; will point to a value that holds the offset of the function to use in memory.&lt;br /&gt;
==== OP_ScriptMethodCall ====&lt;br /&gt;
This opcode is used to call a GSC function on an entity that is defined in another GSC. The name of the GSC function is found by a reference. The offset of the reference is actually the offset of this opcode. In the function call section should be a definition with a reference to this opcode. This opcode is then added to the stack to be dumped. When dumping, the first entity on the stack will be the entity the function is being called upon, followed by an entity for each argument in the function. To get to the next opcode, perform the following&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
currentFunctionDataOffset += 4;&lt;br /&gt;
currentFunctionDataOffset &amp;amp;= 0xFFFFFFFC;&lt;br /&gt;
currentFunctionDataOffset += 4;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Before adding the last 4, &amp;quot;currentFunctionDataOffset&amp;quot; will point to a value that holds the offset of the function to use in memory.&lt;br /&gt;
==== OP_wait ====&lt;br /&gt;
This is a simple 1 byte opcode used for the &amp;quot;wait()&amp;quot; function. This is not added to the stack, instead the stack is processed. The first (and only) entity on the stack should be the number of milliseconds to wait. At the end of this, the stack should be empty.&lt;br /&gt;
==== OP_waittillframeend ====&lt;br /&gt;
This is a simple 1 byte opcode used for &amp;quot;waittillframeend&amp;quot;. This is not added to the stack, and is always ran with an empty stack.&lt;br /&gt;
==== OP_PreScriptCall ====&lt;br /&gt;
This is a simple 1 byte opcode used before all instructions and is equivalent to NOP.&lt;br /&gt;
==== OP_Script Call Functions ====&lt;br /&gt;
These opcodes are used to call a function and are very similar. The names of the function to call are found by a reference, and for all of these opcodes the reference is the offset of the opcode. &amp;quot;Method&amp;quot; opcodes have an extra entity on the stack as the entity the function is called upon. &amp;quot;Thread&amp;quot; opcodes are threading the function they call. The &amp;quot;Pointer&amp;quot; opcodes do not have a reference with the function&#039;s name, instead the function is a variable and an extra entity is on the stack. There will be an entity on the stack for each expected argument. To read past OP_ScriptFunctionCall, OP_ScriptMethodCall, OP_ScriptMethodCall2, and OP_ScriptMethodThreadCall, do&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
currentFunctionDataOffset += 4;&lt;br /&gt;
currentFunctionDataOffset &amp;amp;= 0xFFFFFFFC;&lt;br /&gt;
currentFunctionDataOffset += 4;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
The &amp;quot;Pointer&amp;quot; opcodes are all 2 byte opcdes. All these opcodes are added to the stack to be dumped. &lt;br /&gt;
==== OP_clearparams ====&lt;br /&gt;
This is a 1 byte opcode and is used most often to process the stack. The stack is simply processed and should be clear by the end of this running.&lt;br /&gt;
==== OP_37 ====&lt;br /&gt;
Not very well understood, skipping it seems to work fine.&lt;br /&gt;
==== OP_BoolNot ====&lt;br /&gt;
This is a simple 1 byte opcode used for the logical NOT operator (&amp;quot;!&amp;quot;). This is simply added to the stack to be dumped. When dumping, the next entity on the stack is the value to invert. &lt;br /&gt;
==== OP_jump Codes ====&lt;br /&gt;
Rather than have logical AND and OR operators in this language, it is similar to PPC in that there are &amp;quot;branches&amp;quot; or &amp;quot;jumps&amp;quot;. Rather than using an AND operator, a series of conditional jumps are used to produce the same result. OP_jump is a simple absolute jump value. After reading the opcode,&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
(++currentFunctionDataOffset) &amp;amp;= 0xFFFFFFFE;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
At this point &amp;quot;currentFunctionDataOffset&amp;quot; will point to a &amp;quot;short&amp;quot; data value. This will be an offset in the GSC to jump to (Usually just a few bytes away). Skip another 2 bytes past this offset to continue reading opcodes. This opcode is then added to the stack to be dumped. The next entity in the stack is the condition to jump on.&lt;br /&gt;
==== Logical and Bitwise Operators ====&lt;br /&gt;
OP_inc &amp;amp; OP_dec are skipped by performing this operation&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
(++currentFunctionDataOffset) &amp;amp;= 0xFFFFFFFE;&lt;br /&gt;
currentFunctionDataOffset += 2;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
They are added to the stack to be dumped. When dumping, the next member of the stack is the entity to shift, followed by &amp;quot;++&amp;quot; for increase and &amp;quot;--&amp;quot; for decrease.&lt;br /&gt;
&lt;br /&gt;
The next few operators are all 1 byte operators. They are simply added to the stack to be dumped. When dumping, the next entity on the stack is the right side of the operator with the nxt entity being the left side.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|&#039;&#039;&#039;opcode&#039;&#039;&#039;||&#039;&#039;&#039;Operator&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|OP_bit_or||&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|OP_bit_and||&amp;amp;&lt;br /&gt;
|-&lt;br /&gt;
|OP_equality||==&lt;br /&gt;
|-&lt;br /&gt;
|OP_inequality||!=&lt;br /&gt;
|-&lt;br /&gt;
|OP_less||&amp;lt;&lt;br /&gt;
|-&lt;br /&gt;
|OP_greater||&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|OP_less_equal||&amp;lt;=&lt;br /&gt;
|-&lt;br /&gt;
|OP_greater_equal||&amp;gt;=&lt;br /&gt;
|-&lt;br /&gt;
|OP_plus||+&lt;br /&gt;
|-&lt;br /&gt;
|OP_minus||-&lt;br /&gt;
|-&lt;br /&gt;
|OP_multiply||*&lt;br /&gt;
|-&lt;br /&gt;
|OP_divide||/&lt;br /&gt;
|-&lt;br /&gt;
|OP_mod||%&lt;br /&gt;
|}&lt;br /&gt;
==== OP_size ====&lt;br /&gt;
This opcode is used to get the &amp;quot;.size&amp;quot; of an array entity. Simply added to the stack for dumping, the next stack entity is the array entity. &lt;br /&gt;
==== OP_waittillmatch &amp;amp; OP_waittill &amp;amp; OP_notify ====&lt;br /&gt;
These 1 byte opcodes codes are used in combination with OP_endon for cross-thread syncing. Rather than being added to the stack, this processes the stack. The first entity on the stack will be the entity the function is being referenced to. The constant strings are next on the stack and should be the only remaining items on the stack. Following these opcodes are a OP_24 for each variable to pass (Used to pass data at the point of the sync). This is a 2 byte opcode, with the second byte being the index of the local variable defined at the beginning of the function. &lt;br /&gt;
==== OP_endon ====&lt;br /&gt;
This 1 byte opcode is used in combination with the above codes for cross-thread syncing. Rather than being added to the stack, this processes the stack. The first entity on the stack will be the entity this function is being referenced to. The constant strings to end on are then placed on the stack.&lt;br /&gt;
==== OP_voidCodepos ====&lt;br /&gt;
Equivelent to NOP.&lt;br /&gt;
==== OP_switch &amp;amp; OP_endswitch ====&lt;br /&gt;
When a switch is used by the game, only the needed case is ran at a time. However when dumping, all cases must be processed. There are a few points of interest when using the switch, the first is found by doing&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
currentFunctionDataOffset += 3;&lt;br /&gt;
currentFunctionDataOffset &amp;amp;= 0xFFFFFFFC;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
At this point &amp;quot;currentFunctionDataOffset&amp;quot; is a partial pointer to an integer, the case definition location (The switch case code is directly after this integer, with the case definitions directly after that). After setting &amp;quot;currentFunctionDataOffset&amp;quot; to this integer, perform this to get to the actual case definitions&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
currentFunctionDataOffset += 7;&lt;br /&gt;
currentFunctionDataOffset &amp;amp;= 0xFFFFFFFC;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Currently &amp;quot;currentFunctionDataOffset&amp;quot; will point to directly after the switch case code. The first integer is the switch case count. Following this is 8 bytes for each case in the switch. The first short in these 8 bytes is the &amp;quot;switch case type&amp;quot;. There are currently 2 known switch types, integer (0x80) and string (0). If the type is integer then the short after the type is the index for this case. If the type is a string, then there will be an argument in the argument section with the offset of the short after the type. The 4 bytes after these 2 shorts is the offset for the section of code for this case. If the type is 0 and the short for the reference is 0, then this is the &amp;quot;default&amp;quot; case. The OP_endswitch is found at the end of the section of code for this switch, just before the case defintions. It is a 1 byte opcode, and after reading this the switch should be ended and the case defintions skipped. &lt;br /&gt;
==== OP_vector ====&lt;br /&gt;
This is a simple 1 byte opcode. Vectors are a standard l-type in GSC and simply defined in raw text by doing (number1, number2, number3). Once this opcode is read it is added to the stack to be dumped. When dumping there must be at least 3 more entities on the stack, one for each item in the vector. &lt;br /&gt;
==== OP_5C ====&lt;br /&gt;
This opcode is used to reference dvar entities in GSC. In GSC when referencing a dvar it appears as #&amp;quot;dvarName&amp;quot;. Rather than storing the dvarName directly, the hash is stored and any dvar with a matching hash is used. To get the hash, perform&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
currentFunctionDataOffset += 3;&lt;br /&gt;
currentFunctionDataOffset &amp;amp;= 0xFFFFFFFC;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Then &amp;quot;currentFunctionDataOffset&amp;quot; will point to an integer that is the dvar&#039;s hash. This is then added to the stack to be dumped. To continue reading opcodes, skip another 4 bytes past the hash.&lt;br /&gt;
==== OP_5E ====&lt;br /&gt;
This 2 byte opcode is used to store very simple vectors. The second byte in the opcode is the flags for the vector elements. Each element in the vector is 0 by default. The first element is &amp;quot;-1&amp;quot; if the bitflag 0x10 is set, and &amp;quot;1&amp;quot; if 0x20 is set. The second element is &amp;quot;-1&amp;quot; if the bitflag 4 is set, and &amp;quot;1&amp;quot; if 8 is set. The third element is &amp;quot;-1&amp;quot; if the bitflag 1 is set, and &amp;quot;1&amp;quot; if 2 is set.&lt;br /&gt;
==== OP_5F ====&lt;br /&gt;
This is a simple 1 byte opcode that is added to the stack once its read. It is used for the &amp;quot;isDefined()&amp;quot; function. The next entity on the stack is the entity to check for existence.&lt;br /&gt;
==== OP_60 ====&lt;br /&gt;
This is a simple 1 byte opcode that is added to the stack once its read. It is used for the &amp;quot;vector_scale()&amp;quot; function. The next entity on the stack is the vector entity to scale. The following entity is the scaler entity. &lt;br /&gt;
==== OP_61 ====&lt;br /&gt;
This is a simple 1 byte opcode that is added to the stack once its read. It is used for the &amp;quot;anglesToUp()&amp;quot; function. The next entity on the stack is the angles to convert.&lt;br /&gt;
==== OP_62 ====&lt;br /&gt;
This is a simple 1 byte opcode that is added to the stack once its read. It is used for the &amp;quot;anglesToRight()&amp;quot; function. The next entity on the stack is the angles to convert.&lt;br /&gt;
==== OP_63 ====&lt;br /&gt;
This is a simple 1 byte opcode that is added to the stack once its read. It is used for the &amp;quot;anglesToForward()&amp;quot; function. The next entity on the stack is the angles to convert.&lt;br /&gt;
==== OP_64 ====&lt;br /&gt;
This is a simple 1 byte opcode that is added to the stack once its read. It is used for the &amp;quot;angleClamp180()&amp;quot; function. The next entity on the stack is the angle to clamp.&lt;br /&gt;
==== OP_65 ====&lt;br /&gt;
This is a simple 1 byte opcode that is added to the stack once its read. It is used for the &amp;quot;vectorsToAngle()&amp;quot; function. The next entity on the stack is the vector to convert.&lt;br /&gt;
==== OP_66 ====&lt;br /&gt;
This is a simple 1 byte opcode that is added to the stack once its read. It is used for the &amp;quot;abs()&amp;quot; or &amp;quot;absolute value&amp;quot; function. The next entity on the stack is the integer to convert.&lt;br /&gt;
==== OP_67 ====&lt;br /&gt;
This is a simple 1 byte opcode that is added to the stack once its read. It is used for the &amp;quot;getTime()&amp;quot; function.&lt;br /&gt;
==== OP_68 ====&lt;br /&gt;
This is a simple 1 byte opcode that is added to the stack once its read. It is used for the &amp;quot;getDvar()&amp;quot; function. The next entity on the stack is the dvar to get, typically an OP_5C for the dvar&#039;s hash.&lt;br /&gt;
==== OP_69 ====&lt;br /&gt;
This is a simple 1 byte opcode that is added to the stack once its read. It is used for the &amp;quot;getDvarInt()&amp;quot; function. The next entity on the stack is the dvar to get, typically an OP_5C for the dvar&#039;s hash.&lt;br /&gt;
==== OP_6A ====&lt;br /&gt;
This is a simple 1 byte opcode that is added to the stack once its read. It is used for the &amp;quot;getDvarFloat()&amp;quot; function. The next entity on the stack is the dvar to get, typically an OP_5C for the dvar&#039;s hash.&lt;br /&gt;
==== OP_70 ====&lt;br /&gt;
This is an odd 1 byte opcode. It appears to replace the previous opcode on the stack with an OP_GetZero.&lt;br /&gt;
==== OP_71 ====&lt;br /&gt;
This is an odd 1 byte opcode that is added to the stack once read. When dumping, it appears to throw away the first item on the stack, then performs an OP_inc on the next item.&lt;br /&gt;
==== OP_7B ==== &lt;br /&gt;
This opcode is used to denote developer code sections. These sections are outlined by &amp;quot;/#&amp;quot; and &amp;quot;#/&amp;quot; in raw text and are only ran when the dvars &amp;quot;developer&amp;quot; and &amp;quot;developer_script&amp;quot; are set to true. The section starts at this opcode, and the end is defined at&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
(++currentFunctionDataOffset) &amp;amp;= 0xFFFFFFFE;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
At this point there is a short value that holds the length of this code section at which point the end marker will be.&lt;br /&gt;
&lt;br /&gt;
== Source Format ==&lt;br /&gt;
The source format for GSCs is very well known. Simply a code file (text) with a .gsc extension.&lt;/div&gt;</summary>
		<author><name>Therifboy</name></author>
	</entry>
	<entry>
		<id>https://codresearch.dev/index.php?title=ScriptParseTree_Asset&amp;diff=425</id>
		<title>ScriptParseTree Asset</title>
		<link rel="alternate" type="text/html" href="https://codresearch.dev/index.php?title=ScriptParseTree_Asset&amp;diff=425"/>
		<updated>2014-05-04T18:05:32Z</updated>

		<summary type="html">&lt;p&gt;Therifboy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
[[Category:Assets]]&lt;br /&gt;
[[Category:BO2]]&lt;br /&gt;
The ScriptParseTree asset is a new asset in Black Ops 2 and this is the only Call of Duty game it has appeared in so far. This is Treyarch&#039;s answer to GSCs (Keep in mind that on Black Ops 1 GSCs were still [[:Rawfile Asset|rawfiles]]). Compared to IW&#039;s equivalent scriptfile asset, the ScriptParseTree has proven to give slightly more information and thus are easier to reverse. The basic structure is identical to the rawfiles&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
struct ScriptParseTree&lt;br /&gt;
{&lt;br /&gt;
  const char *name;&lt;br /&gt;
  int len;&lt;br /&gt;
  const char *buffer;&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Simply an uncompressed buffer holding the GSC data. The binary data is then passed to the GSC Virtual Machine (VM) to be ran. Now for the header of the binary data&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#define GSCMagic = 0x804753430D0A0006&lt;br /&gt;
&lt;br /&gt;
struct GSCHeader&lt;br /&gt;
{&lt;br /&gt;
  __int64 magic;&lt;br /&gt;
       int unknown1;&lt;br /&gt;
  unsigned int includeSectionOffset;&lt;br /&gt;
  unsigned int usingAnimtreeSectionOffset;&lt;br /&gt;
  unsigned int executionDataSectionOffset;&lt;br /&gt;
  unsigned int argumentSectionOffset;&lt;br /&gt;
  unsigned int functionDeclSectionOffset;&lt;br /&gt;
  unsigned int callFunctionSectionOffset;&lt;br /&gt;
       char unknown2[0xC];&lt;br /&gt;
  unsigned short nameOffset;&lt;br /&gt;
  unsigned short totalArgumentCount;&lt;br /&gt;
  unsigned short functionDeclCount;&lt;br /&gt;
  unsigned short callFunctionCount;&lt;br /&gt;
       int unknown3;&lt;br /&gt;
  byte includeSectionCount;&lt;br /&gt;
  byte usingAnimtreeCount;&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Following the header is a section of null terminated strings (undetermined size/count). This section is also padded at the end to a 4-byte buffer. The following sections will reference back to this section when a string is used. Keep in mind that the offsets are simply just an offset in the buffer.&lt;br /&gt;
=== Include Section ===&lt;br /&gt;
The first known section after the string table is the include section, and this should be the first section dumped as well. This section is used to replace the following in a raw gsc&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#include maps\mp\_utility;&lt;br /&gt;
#include common_scripts\utility;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
The include section is probably the easiest section to reverse. Each include exists as a single integer which holds the offset of the include&#039;s string in the buffer. &lt;br /&gt;
=== Using Animtree Section ===&lt;br /&gt;
Although this section doesn&#039;t follow the include section, it is what needs to be dumped second. When a GSC wants to directly access and animtree, then the following code is added (for animtree &amp;quot;mp_vehicles&amp;quot;)&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#using_animtree( &amp;quot;mp_vehicles&amp;quot; );&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Then animations can be accessed from the tree as follows (Using the %)&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
destructible_anims[ &amp;quot;car&amp;quot; ] = %veh_car_destroy;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Knowing this, the binary data section can be reversed fairly easily. The structure for their definitions in this section is&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
struct Reference&lt;br /&gt;
{&lt;br /&gt;
  unsigned short name;&lt;br /&gt;
  unsigned short xrefOffset;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct AnimTree&lt;br /&gt;
{&lt;br /&gt;
	unsigned short nameOffset;&lt;br /&gt;
	unsigned short pathOffset; //Paths do not exist for animtrees (so far)&lt;br /&gt;
	unsigned short referenceCount;&lt;br /&gt;
	Reference references[0];&lt;br /&gt;
	&lt;br /&gt;
	static AnimTree* create(unsigned short referenceCount)&lt;br /&gt;
	{&lt;br /&gt;
		AnimTree* temp = (AnimTree*)malloc(sizeof(AnimTree) + referenceCount * sizeof(Reference));&lt;br /&gt;
		temp-&amp;gt;referenceCount = referenceCount;&lt;br /&gt;
		return temp;&lt;br /&gt;
	}&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
XRefs are explained in better detail in the code section. Each animtree thats included will have an AnimTree struct, and every time an animation is used it will be defined in the references.&lt;br /&gt;
=== Argument Section ===&lt;br /&gt;
The argument section not only defines any function arguments that are defined with function declarations, but any local variable a function might create. Although they are defined the same, the difference between the two is highlighted in the code section. Each argument will be defined as follows&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
struct Argument&lt;br /&gt;
{&lt;br /&gt;
	unsigned short nameOffset;&lt;br /&gt;
	unsigned byte referenceCount;&lt;br /&gt;
		signed char unknown;&lt;br /&gt;
	unsigned int references[0];&lt;br /&gt;
  &lt;br /&gt;
	static Argument* create(unsigned char referenceCount)&lt;br /&gt;
	{&lt;br /&gt;
		Argument* temp = (Argument*)malloc(sizeof(Argument) + referenceCount * sizeof(unsigned int));&lt;br /&gt;
		temp-&amp;gt;referenceCount = referenceCount;&lt;br /&gt;
		return temp;&lt;br /&gt;
	}&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
The references will explained in more detail in the code section.&lt;br /&gt;
=== Function Call Section ===&lt;br /&gt;
If a function is called by a function in this GSC, it must be defined here in the function call section, even if that function is located inside this GSC. First the struct&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
struct FunctionCall&lt;br /&gt;
{&lt;br /&gt;
  unsigned short nameOffset;&lt;br /&gt;
  unsigned short pathOffset;&lt;br /&gt;
  unsigned short referenceCount;&lt;br /&gt;
  byte paramCount;&lt;br /&gt;
  byte flag;&lt;br /&gt;
  unsigned int references[0];&lt;br /&gt;
  &lt;br /&gt;
  static FunctionCall* create(unsigned short referenceCount)&lt;br /&gt;
  {&lt;br /&gt;
	FunctionCall* temp = (FunctionCall*)malloc(sizeof(FunctionCall) + referenceCount * sizeof(unsigned int));&lt;br /&gt;
	temp-&amp;gt;referenceCount = referenceCount;&lt;br /&gt;
	return temp;&lt;br /&gt;
  }&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
NameOffset obviously holds the name of the called function. References are explained in the code section. If the function is not located in this GSC or in a &amp;quot;using&amp;quot; GSC, then the function must have a path with the name of the GSC that it is defined in, and this is where the pathOffset points to. eg&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
thread maps\mp\gametypes\_spawning::init();&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
=== Function Declaration Section ===&lt;br /&gt;
This is the section that will be cycled through when dumping the GSC. Every function that is defined in this GSC is here. &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
struct FunctionDeclaration&lt;br /&gt;
{&lt;br /&gt;
       int unknown1;&lt;br /&gt;
  unsigned int executionDataOffset;&lt;br /&gt;
  unsigned short nameOffset;&lt;br /&gt;
       byte unknown2;&lt;br /&gt;
  byte argumentCount;&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
The executionDataOffset is an offset in the code section defining where this function begins.&lt;br /&gt;
=== Executable Data ===&lt;br /&gt;
This section is by far the trickiest section. This is where the actual code the functions are compiled into is stored. The first thing that will be needed is a list of operation codes (OPcodes). These opcodes should be the same for all systems.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
enum OPCodes : char&lt;br /&gt;
{&lt;br /&gt;
  OP_Return			= 0x1,&lt;br /&gt;
  OP_GetUndefined		= 0x2,&lt;br /&gt;
  OP_GetZero			= 0x3,&lt;br /&gt;
  OP_GetByte			= 0x4,&lt;br /&gt;
  OP_GetNegByte			= 0x5,&lt;br /&gt;
  OP_GetUnsignedShort		= 0x6,&lt;br /&gt;
  OP_GetNegUnsignedShort     	= 0x7,&lt;br /&gt;
  OP_GetInteger			= 0x8,&lt;br /&gt;
  OP_GetFloat			= 0x9,&lt;br /&gt;
  OP_GetString			= 0xA,&lt;br /&gt;
  OP_GetIString			= 0xB,&lt;br /&gt;
  OP_GetLevelObject		= 0xD,&lt;br /&gt;
  OP_GetSelf			= 0xF,&lt;br /&gt;
  OP_GetLevel			= 0x10,&lt;br /&gt;
  OP_GetGame			= 0x11,&lt;br /&gt;
  OP_GetAnimation		= 0x13,&lt;br /&gt;
  OP_GetGameRef			= 0x14,&lt;br /&gt;
  OP_GetFunction		= 0x15,&lt;br /&gt;
  OP_CreateLocalVariable	= 0x17,&lt;br /&gt;
  OP_EvalLocalVariableCached1   = 0x19,&lt;br /&gt;
  OP_EvalArray			= 0x1A,&lt;br /&gt;
  OP_EvalArrayRef		= 0x1C,&lt;br /&gt;
  OP_ClearArray			= 0x1D,&lt;br /&gt;
  OP_EmptyArray			= 0x1E,&lt;br /&gt;
  OP_GetSelfObject		= 0x1F,&lt;br /&gt;
  OP_EvalFieldVariable		= 0x20,&lt;br /&gt;
  OP_EvalFieldVariableRef	= 0x21,&lt;br /&gt;
  OP_ClearFieldVariable		= 0x22,&lt;br /&gt;
  OP_24 = 0x24,&lt;br /&gt;
  OP_25 = 0x25,&lt;br /&gt;
  OP_checkclearparams		= 0x26,&lt;br /&gt;
  OP_EvalLocalVariableRefCached = 0x27,&lt;br /&gt;
  OP_SetVariableField		= 0x28,&lt;br /&gt;
  OP_CallBuiltin		= 0x29,&lt;br /&gt;
  OP_ScriptMethodCall		= 0x2A,&lt;br /&gt;
  OP_wait			= 0x2B,&lt;br /&gt;
  OP_waittillFrameEnd		= 0x2C,&lt;br /&gt;
  OP_PreScriptCall		= 0x2D,&lt;br /&gt;
  OP_ScriptFunctionCall		= 0x2E,&lt;br /&gt;
  OP_ScriptFunctionCallPointer	= 0x2F,&lt;br /&gt;
  OP_ScriptMethodCall2		= 0x30,&lt;br /&gt;
  OP_ScriptMethodCallPointer	= 0x31,&lt;br /&gt;
  OP_ScriptThreadCall		= 0x32,&lt;br /&gt;
  OP_ScriptThreadCallPointer	= 0x33,&lt;br /&gt;
  OP_ScriptMethodThreadCall	= 0x34,&lt;br /&gt;
  OP_ScriptMethodThreadCallPointer = 0x35,&lt;br /&gt;
  OP_clearparams		= 0x36,&lt;br /&gt;
  OP_37 = 0x37,&lt;br /&gt;
  OP_BoolNot			= 0x39,&lt;br /&gt;
  OP_JumpOnFalse		= 0x3B,&lt;br /&gt;
  OP_JumpOnTrue			= 0x3C,&lt;br /&gt;
  OP_JumpOnFalseExpr		= 0x3D,&lt;br /&gt;
  OP_JumpOnTrueExpr		= 0x3E,&lt;br /&gt;
  OP_jump			= 0x3F,&lt;br /&gt;
  OP_inc			= 0x41,&lt;br /&gt;
  OP_dec			= 0x42,&lt;br /&gt;
  OP_bit_or			= 0x43,&lt;br /&gt;
  OP_bit_and			= 0x45,&lt;br /&gt;
  OP_equality			= 0x46,&lt;br /&gt;
  OP_inequality			= 0x47,&lt;br /&gt;
  OP_less			= 0x48,&lt;br /&gt;
  OP_greater			= 0x49,&lt;br /&gt;
  OP_less_equal			= 0x4A,&lt;br /&gt;
  OP_greater_equal		= 0x4B,&lt;br /&gt;
  OP_plus			= 0x4E,&lt;br /&gt;
  OP_minus			= 0x4F,   &lt;br /&gt;
  OP_multiply			= 0x50,&lt;br /&gt;
  OP_divide			= 0x51,&lt;br /&gt;
  OP_mod			= 0x52,&lt;br /&gt;
  OP_size			= 0x53,&lt;br /&gt;
  OP_waittillmatch		= 0x54,&lt;br /&gt;
  OP_waittill			= 0x55,&lt;br /&gt;
  OP_notify			= 0x56,&lt;br /&gt;
  OP_endon			= 0x57,&lt;br /&gt;
  OP_voidCodepos		= 0x58,&lt;br /&gt;
  OP_switch			= 0x59,&lt;br /&gt;
  OP_endswitch			= 0x5A,&lt;br /&gt;
  OP_vector			= 0x5B,&lt;br /&gt;
  OP_5C = 0x5C,&lt;br /&gt;
  OP_5E = 0x5E,&lt;br /&gt;
  OP_5F = 0x5F,&lt;br /&gt;
  OP_60 = 0x60,&lt;br /&gt;
  OP_61 = 0x61,&lt;br /&gt;
  OP_62 = 0x62,&lt;br /&gt;
  OP_63 = 0x63,&lt;br /&gt;
  OP_64 = 0x64,&lt;br /&gt;
  OP_65 = 0x65,&lt;br /&gt;
  OP_66 = 0x66,&lt;br /&gt;
  OP_67 = 0x67,&lt;br /&gt;
  OP_68 = 0x68,&lt;br /&gt;
  OP_69 = 0x69,&lt;br /&gt;
  OP_6A = 0x6A,&lt;br /&gt;
  OP_70 = 0x70,&lt;br /&gt;
  OP_71 = 0x71,&lt;br /&gt;
  OP_7B = 0x7B,&lt;br /&gt;
  OP_count			= 0x7C,&lt;br /&gt;
  OP_NOP			= 0x7F&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Notice that 0x7B is the highest opcode, but 0x7F is still valid. In truth anything over 0x7B will register as NOP. The executable does some odd jumping around for each OP code, so a recap of each OP code will try to be added. In the following functions &amp;quot;currentFunctionDataOffset&amp;quot; is defined as an integer that points to the current OP code being read. Keep in mind that an OP code is read, the data offset is increased by 1, and then the following code is ran. OP codes are parsed in the order they are read, but if a dump is being done then parts are going to be dumped in reverse order. Here is an example of a series of OP codes...&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
OP_PreScriptCall&lt;br /&gt;
OP_GetString		&amp;quot;1350&amp;quot;&lt;br /&gt;
OP_GetString		&amp;quot;scr_veh_health_tank&amp;quot;&lt;br /&gt;
OP_CallBuiltin 		2, &amp;quot;setdvar&amp;quot;&lt;br /&gt;
OP_clearparams&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
This would be the &amp;quot;asm&amp;quot; of the GSC, and would look like this...&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
setdvar( &amp;quot;scr_veh_health_tank&amp;quot;, &amp;quot;1350&amp;quot; );&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
==== OP_Return ====&lt;br /&gt;
The return OP is exactly as expected. Any OP codes in the stack go after a &amp;quot;return&amp;quot;. There is no data skipped, it is simply a 1 byte opcode. Keep in mind that if the game reaches a return, it leaves the function however for a complete dump, data must continue to be read and sometimes this data is unnecessary.&lt;br /&gt;
==== OP_GetUndefined &amp;amp; OP_GetZero ====&lt;br /&gt;
This simply represents the &amp;quot;undefined&amp;quot;/0 element in GSCs. It is a simple 1 byte opcode, and once read it is put right onto the stack. When dumping from the stack, simply print &amp;quot;undefined&amp;quot;/0 and continue.&lt;br /&gt;
==== OP_GetByte &amp;amp; OP_GetNegByte ====&lt;br /&gt;
These are used to hold any numbers that are small enough to be held in 1 byte. These are 2 byte opcode in that the first byte is the opcode and the second byte is an unsigned value. The opcode is added to the stack once read. When dumping from the stack the value is simply printed and then continued. Keep in mind that OP_GetNegByte should get a negative symbol before the value is printed.&lt;br /&gt;
==== OP_GetUnsignedShort &amp;amp; OP_GetNegUnsignedShort ====&lt;br /&gt;
These are used to hold any numbers that are small enough to be held in 2 byte. After reading the opcode, the following is used to determine the offset of the unsigned short value&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
(++currentFunctionDataOffset) &amp;amp;= 0xFFFFFFFE;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Then &amp;quot;currentFunctionDataOffset&amp;quot; will be the offset of the unsigned short value to use. Then skip another 2 bytes for that value to continue reading. The opcode is added to the stack once read. When dumping from the stack the value is simply printed and then continued. Keep in mind that OP_GetNegUnsignedShort should get a negative symbol before the value is printed.&lt;br /&gt;
==== OP_GetInteger &amp;amp; OP_GetFloat ====&lt;br /&gt;
OP_GetInteger is used for any numbers that are large enough to warrant a signed integer, while OP_GetFloat is used for bigger numbers and decimals. After reading the opcode, the following is used to determine the offset of the value to get&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
currentFunctionDataOffset += 3;&lt;br /&gt;
currentFunctionDataOffset &amp;amp;= 0xFFFFFFFC;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
At this point &amp;quot;currentFunctionDataOffset&amp;quot; will be the offset of the value to get, then skip another 4 bytes past the value to continue reading. The opcode is then added to the stack. When dumping the value is simply printed and then continued;&lt;br /&gt;
==== OP_GetString &amp;amp; OP_GetIString ====&lt;br /&gt;
These are very clearly used to reference strings in code. Strings are found by their references. To get the offset of the reference use the following&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
(++currentFunctionDataOffset) &amp;amp;= 0xFFFFFFFE;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
In the argument section should be an argument with a reference that is equal to &amp;quot;currentFunctionDataOffset&amp;quot; at this point. The name of the argument is the offset of the string to use in the string pool from the beginning of the GSC. Add another 2 to currentFunctionDataOffset to skip past the reference to continue reading. Keep in mind that OP_GetIString is used to get localized strings, and a &amp;amp; should be a added before the quotes.&lt;br /&gt;
==== OP_GetLevelObject &amp;amp; OP_GetLevel &amp;amp; OP_GetSelf &amp;amp; OP_GetSelfObject &amp;amp; OP_GetGame &amp;amp; OP_GetGameRef ====&lt;br /&gt;
All of these are simple 1 byte opcodes that are added to the stack once they are read. They represent (and should be printed as) the &amp;quot;game&amp;quot;, &amp;quot;level&amp;quot; and &amp;quot;self&amp;quot; objects in GSC code.&lt;br /&gt;
==== OP_GetAnimation ====&lt;br /&gt;
These are used to reference animations in an animtree that was included to this GSC. The name of the animation is found by a reference. To get the offset of the reference&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
currentFunctionDataOffset += 3;&lt;br /&gt;
currentFunctionDataOffset &amp;amp;= 0xFFFFFFFC;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
There should be an animtree in the animtree include section that has an animation with a reference equal to &amp;quot;currentFunctionDataOffset&amp;quot; at this point. Add another 4 bytes to skip past the reference to continue reading opcodes. After this is read it is added to the stack. When dumping the reference animation name should be found and dumped (without quotes) preceeded by a % sign.&lt;br /&gt;
==== OP_GetFunction ====&lt;br /&gt;
This is used to reference a function without calling it. This allows you to set a variable to a function, and then call the variable later. There should be a function call with a reference equal to &amp;quot;currentFunctionDataOffset&amp;quot;, and this is the function to use. This is then added to the stack. After that the following code is performed&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
currentFunctionDataOffset += 3;&lt;br /&gt;
currentFunctionDataOffset &amp;amp;= 0xFFFFFFFC;&lt;br /&gt;
currentFunctionDataOffset += 4;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
to continue reading. When dumping the function name should be printed after &amp;quot;::&amp;quot;.&lt;br /&gt;
==== OP_CreateLocalVariable ====&lt;br /&gt;
This opcode is used at the beginning of any function with arguments or local variables to define them. After the opcode is a single byte that is the number to define. Each variable argument is found by getting the reference for it in the argument section. To get the offset of each reference&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
(++currentFunctionDataOffset) &amp;amp;= 0xFFFFFFFE;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
That gets ran before to find a reference offset. There should be a argument with a reference equal to the &amp;quot;currentFunctionDataOffset&amp;quot;. Then 2 is added to skip past the current reference before the above is started again. The function declaration states the number of arguments, any extra are local variables. Keep in mind the stack should be clear after this is ran.&lt;br /&gt;
==== OP_EvalLocalVariableCached1 &amp;amp; OP_EvalLocalVariableRefCached ====&lt;br /&gt;
This is a simple 2 byte opcode used to reference an argument or local variable. The second byte is the index of the local variable to use, defined by OP_CreateLocalVariable. This is then added to the stack to be dumped. To dump the local variable must be looked up, the argument found and the name referenced.&lt;br /&gt;
==== OP_EvalArray &amp;amp; OP_EvalArrayRef ====&lt;br /&gt;
These are simple 1 byte opcodes used to reference elements in an array. It is simply added to the stack to be dumped. When dumping, the next entity on the stack is the array to use and the next entity is the index in the array (Indexes are not always numbers).&lt;br /&gt;
==== OP_ClearArray ====&lt;br /&gt;
This is a 1 byte opcode used to set an array element to &amp;quot;undefined&amp;quot;. This is not added to the stack, instead the stack is processed. The first entity on the stack is the array to use and the second is the array index. This element is then set to undefined. At the end of this, the stack should be empty.&lt;br /&gt;
==== OP_EmptyArray ====&lt;br /&gt;
This is a simple 1 byte opcode used to denote an empty array (&amp;quot;[]&amp;quot;). It is added right to the stack and simply printed when dumping. &lt;br /&gt;
==== OP_EvalFieldVariable &amp;amp; OP_EvalFieldVariableRef ====&lt;br /&gt;
These opcodes are used to reference any field variable. The names of the field variable is found by the offset of a reference. To find the offset of the reference&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
(++currentFunctionDataOffset) &amp;amp;= 0xFFFFFFFE;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
There should then be an argument in the argument section that has a reference equal to &amp;quot;currentFunctionDataOffset&amp;quot;. Skip another 2 bytes past the reference to continue reading opcodes. The opcode is then added to the stack to be dumped later. The next entity on the stack is the item the field variable is for. &lt;br /&gt;
==== OP_ClearFieldVariable ====&lt;br /&gt;
This opcode is used to set a field variable element to &amp;quot;undefined&amp;quot;. The name of the field variable is found by the offset of a reference. To find the offset of a reference&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
(++currentFunctionDataOffset) &amp;amp;= 0xFFFFFFFE;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
There should then be an argument in the argument section that has a reference equal to &amp;quot;currentFunctionDataOffset&amp;quot;. Skip another 2 bytes past the reference to continue reading opcodes. This opcode is not added to the stack, instead the stack is processed. The only entity on the stack should be the item the field variable is for. Once this is processed the stack should be empty. &lt;br /&gt;
==== OP_checkclearparams &amp;amp; OP_25 ====&lt;br /&gt;
Used at the beginning of a function with no arguments. Clears the stack without processing it. &lt;br /&gt;
==== OP_SetVariableField ====&lt;br /&gt;
This is a 1 byte opcode used to set an entity to anything else. This is not added to the stack, instead the stack is processed. The first entity on the stack is the entity to set (left side of the &amp;quot;=&amp;quot; sign) with the second being the entity setting with (right side). At the end of this, the stack should be empty.&lt;br /&gt;
==== OP_CallBuiltin ====&lt;br /&gt;
This opcode is used to call a GSC function that is predefined in the executable. The name of the GSC function is found by a reference. The offset of the reference is actually the offset of this opcode. In the function call section should be a definition with a reference to this opcode. This opcode is then added to the stack to be dumped. When dumping, there should be an entity on the stack for each expected argument. To get to the next opcode, perform the following&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
currentFunctionDataOffset += 4;&lt;br /&gt;
currentFunctionDataOffset &amp;amp;= 0xFFFFFFFC;&lt;br /&gt;
currentFunctionDataOffset += 4;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Before adding the last 4, &amp;quot;currentFunctionDataOffset&amp;quot; will point to a value that holds the offset of the function to use in memory.&lt;br /&gt;
==== OP_ScriptMethodCall ====&lt;br /&gt;
This opcode is used to call a GSC function on an entity that is defined in another GSC. The name of the GSC function is found by a reference. The offset of the reference is actually the offset of this opcode. In the function call section should be a definition with a reference to this opcode. This opcode is then added to the stack to be dumped. When dumping, the first entity on the stack will be the entity the function is being called upon, followed by an entity for each argument in the function. To get to the next opcode, perform the following&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
currentFunctionDataOffset += 4;&lt;br /&gt;
currentFunctionDataOffset &amp;amp;= 0xFFFFFFFC;&lt;br /&gt;
currentFunctionDataOffset += 4;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Before adding the last 4, &amp;quot;currentFunctionDataOffset&amp;quot; will point to a value that holds the offset of the function to use in memory.&lt;br /&gt;
==== OP_wait ====&lt;br /&gt;
This is a simple 1 byte opcode used for the &amp;quot;wait()&amp;quot; function. This is not added to the stack, instead the stack is processed. The first (and only) entity on the stack should be the number of milliseconds to wait. At the end of this, the stack should be empty.&lt;br /&gt;
==== OP_waittillframeend ====&lt;br /&gt;
This is a simple 1 byte opcode used for &amp;quot;waittillframeend&amp;quot;. This is not added to the stack, and is always ran with an empty stack.&lt;br /&gt;
==== OP_PreScriptCall ====&lt;br /&gt;
This is a simple 1 byte opcode used before all instructions and is equivalent to NOP.&lt;br /&gt;
==== OP_Script Call Functions ====&lt;br /&gt;
These opcodes are used to call a function and are very similar. The names of the function to call are found by a reference, and for all of these opcodes the reference is the offset of the opcode. &amp;quot;Method&amp;quot; opcodes have an extra entity on the stack as the entity the function is called upon. &amp;quot;Thread&amp;quot; opcodes are threading the function they call. The &amp;quot;Pointer&amp;quot; opcodes do not have a reference with the function&#039;s name, instead the function is a variable and an extra entity is on the stack. There will be an entity on the stack for each expected argument. To read past OP_ScriptFunctionCall, OP_ScriptMethodCall, OP_ScriptMethodCall2, and OP_ScriptMethodThreadCall, do&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
currentFunctionDataOffset += 4;&lt;br /&gt;
currentFunctionDataOffset &amp;amp;= 0xFFFFFFFC;&lt;br /&gt;
currentFunctionDataOffset += 4;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
The &amp;quot;Pointer&amp;quot; opcodes are all 2 byte opcdes. All these opcodes are added to the stack to be dumped. &lt;br /&gt;
==== OP_clearparams ====&lt;br /&gt;
This is a 1 byte opcode and is used most often to process the stack. The stack is simply processed and should be clear by the end of this running.&lt;br /&gt;
==== OP_37 ====&lt;br /&gt;
Not very well understood, skipping it seems to work fine.&lt;br /&gt;
==== OP_BoolNot ====&lt;br /&gt;
This is a simple 1 byte opcode used for the logical NOT operator (&amp;quot;!&amp;quot;). This is simply added to the stack to be dumped. When dumping, the next entity on the stack is the value to invert. &lt;br /&gt;
==== OP_jump Codes ====&lt;br /&gt;
Rather than have logical AND and OR operators in this language, it is similar to PPC in that there are &amp;quot;branches&amp;quot; or &amp;quot;jumps&amp;quot;. Rather than using an AND operator, a series of conditional jumps are used to produce the same result. OP_jump is a simple absolute jump value. After reading the opcode,&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
(++currentFunctionDataOffset) &amp;amp;= 0xFFFFFFFE;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
At this point &amp;quot;currentFunctionDataOffset&amp;quot; will point to a &amp;quot;short&amp;quot; data value. This will be an offset in the GSC to jump to (Usually just a few bytes away). Skip another 2 bytes past this offset to continue reading opcodes. This opcode is then added to the stack to be dumped. The next entity in the stack is the condition to jump on.&lt;br /&gt;
==== Logical and Bitwise Operators ====&lt;br /&gt;
OP_inc &amp;amp; OP_dec are skipped by performing this operation&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
(++currentFunctionDataOffset) &amp;amp;= 0xFFFFFFFE;&lt;br /&gt;
currentFunctionDataOffset += 2;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
They are added to the stack to be dumped. When dumping, the next member of the stack is the entity to shift, followed by &amp;quot;++&amp;quot; for increase and &amp;quot;--&amp;quot; for decrease.&lt;br /&gt;
&lt;br /&gt;
The next few operators are all 1 byte operators. They are simply added to the stack to be dumped. When dumping, the next entity on the stack is the right side of the operator with the nxt entity being the left side.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|&#039;&#039;&#039;opcode&#039;&#039;&#039;||&#039;&#039;&#039;Operator&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|OP_bit_or||&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|OP_bit_and||&amp;amp;&lt;br /&gt;
|-&lt;br /&gt;
|OP_equality||==&lt;br /&gt;
|-&lt;br /&gt;
|OP_inequality||!=&lt;br /&gt;
|-&lt;br /&gt;
|OP_less||&amp;lt;&lt;br /&gt;
|-&lt;br /&gt;
|OP_greater||&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|OP_less_equal||&amp;lt;=&lt;br /&gt;
|-&lt;br /&gt;
|OP_greater_equal||&amp;gt;=&lt;br /&gt;
|-&lt;br /&gt;
|OP_plus||+&lt;br /&gt;
|-&lt;br /&gt;
|OP_minus||-&lt;br /&gt;
|-&lt;br /&gt;
|OP_multiply||*&lt;br /&gt;
|-&lt;br /&gt;
|OP_divide||/&lt;br /&gt;
|-&lt;br /&gt;
|OP_mod||%&lt;br /&gt;
|}&lt;br /&gt;
==== OP_size ====&lt;br /&gt;
This opcode is used to get the &amp;quot;.size&amp;quot; of an array entity. Simply added to the stack for dumping, the next stack entity is the array entity. &lt;br /&gt;
==== OP_waittillmatch &amp;amp; OP_waittill &amp;amp; OP_notify ====&lt;br /&gt;
These 1 byte opcodes codes are used in combination with OP_endon for cross-thread syncing. Rather than being added to the stack, this processes the stack. The first entity on the stack will be the entity the function is being referenced to. The constant strings are next on the stack and should be the only remaining items on the stack. Following these opcodes are a OP_24 for each variable to pass (Used to pass data at the point of the sync). This is a 2 byte opcode, with the second byte being the index of the local variable defined at the beginning of the function. &lt;br /&gt;
==== OP_endon ====&lt;br /&gt;
This 1 byte opcode is used in combination with the above codes for cross-thread syncing. Rather than being added to the stack, this processes the stack. The first entity on the stack will be the entity this function is being referenced to. The constant strings to end on are then placed on the stack.&lt;br /&gt;
==== OP_voidCodepos ====&lt;br /&gt;
Equivelent to NOP.&lt;br /&gt;
==== OP_switch &amp;amp; OP_endswitch ====&lt;br /&gt;
When a switch is used by the game, only the needed case is ran at a time. However when dumping, all cases must be processed. There are a few points of interest when using the switch, the first is found by doing&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
currentFunctionDataOffset += 3;&lt;br /&gt;
currentFunctionDataOffset &amp;amp;= 0xFFFFFFFC;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
At this point &amp;quot;currentFunctionDataOffset&amp;quot; is a partial pointer to an integer, the case definition location (The switch case code is directly after this integer, with the case definitions directly after that). After setting &amp;quot;currentFunctionDataOffset&amp;quot; to this integer, perform this to get to the actual case definitions&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
currentFunctionDataOffset += 7;&lt;br /&gt;
currentFunctionDataOffset &amp;amp;= 0xFFFFFFFC;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Currently &amp;quot;currentFunctionDataOffset&amp;quot; will point to directly after the switch case code. The first integer is the switch case count. Following this is 8 bytes for each case in the switch. The first short in these 8 bytes is the &amp;quot;switch case type&amp;quot;. There are currently 2 known switch types, integer (0x80) and string (0). If the type is integer then the short after the type is the index for this case. If the type is a string, then there will be an argument in the argument section with the offset of the short after the type. The 4 bytes after these 2 shorts is the offset for the section of code for this case. If the type is 0 and the short for the reference is 0, then this is the &amp;quot;default&amp;quot; case. The OP_endswitch is found at the end of the section of code for this switch, just before the case defintions. It is a 1 byte opcode, and after reading this the switch should be ended and the case defintions skipped. &lt;br /&gt;
==== OP_vector ====&lt;br /&gt;
This is a simple 1 byte opcode. Vectors are a standard l-type in GSC and simply defined in raw text by doing (number1, number2, number3). Once this opcode is read it is added to the stack to be dumped. When dumping there must be at least 3 more entities on the stack, one for each item in the vector. &lt;br /&gt;
==== OP_5C ====&lt;br /&gt;
This opcode is used to reference dvar entities in GSC. In GSC when referencing a dvar it appears as #&amp;quot;dvarName&amp;quot;. Rather than storing the dvarName directly, the hash is stored and any dvar with a matching hash is used. To get the hash, perform&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
currentFunctionDataOffset += 3;&lt;br /&gt;
currentFunctionDataOffset &amp;amp;= 0xFFFFFFFC;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Then &amp;quot;currentFunctionDataOffset&amp;quot; will point to an integer that is the dvar&#039;s hash. This is then added to the stack to be dumped. To continue reading opcodes, skip another 4 bytes past the hash.&lt;br /&gt;
==== OP_5E ====&lt;br /&gt;
This 2 byte opcode is used to store very simple vectors. The second byte in the opcode is the flags for the vector elements. Each element in the vector is 0 by default. The first element is &amp;quot;-1&amp;quot; if the bitflag 0x10 is set, and &amp;quot;1&amp;quot; if 0x20 is set. The second element is &amp;quot;-1&amp;quot; if the bitflag 4 is set, and &amp;quot;1&amp;quot; if 8 is set. The third element is &amp;quot;-1&amp;quot; if the bitflag 1 is set, and &amp;quot;1&amp;quot; if 2 is set.&lt;br /&gt;
==== OP_5F ====&lt;br /&gt;
This is a simple 1 byte opcode that is added to the stack once its read. It is used for the &amp;quot;isDefined()&amp;quot; function. The next entity on the stack is the entity to check for existence.&lt;br /&gt;
==== OP_60 ====&lt;br /&gt;
This is a simple 1 byte opcode that is added to the stack once its read. It is used for the &amp;quot;vector_scale()&amp;quot; function. The next entity on the stack is the vector entity to scale. The following entity is the scaler entity. &lt;br /&gt;
==== OP_61 ====&lt;br /&gt;
This is a simple 1 byte opcode that is added to the stack once its read. It is used for the &amp;quot;anglesToUp()&amp;quot; function. The next entity on the stack is the angles to convert.&lt;br /&gt;
==== OP_62 ====&lt;br /&gt;
This is a simple 1 byte opcode that is added to the stack once its read. It is used for the &amp;quot;anglesToRight()&amp;quot; function. The next entity on the stack is the angles to convert.&lt;br /&gt;
==== OP_63 ====&lt;br /&gt;
This is a simple 1 byte opcode that is added to the stack once its read. It is used for the &amp;quot;anglesToForward()&amp;quot; function. The next entity on the stack is the angles to convert.&lt;br /&gt;
==== OP_64 ====&lt;br /&gt;
This is a simple 1 byte opcode that is added to the stack once its read. It is used for the &amp;quot;angleClamp180()&amp;quot; function. The next entity on the stack is the angle to clamp.&lt;br /&gt;
==== OP_65 ====&lt;br /&gt;
This is a simple 1 byte opcode that is added to the stack once its read. It is used for the &amp;quot;vectorsToAngle()&amp;quot; function. The next entity on the stack is the vector to convert.&lt;br /&gt;
==== OP_66 ====&lt;br /&gt;
This is a simple 1 byte opcode that is added to the stack once its read. It is used for the &amp;quot;abs()&amp;quot; or &amp;quot;absolute value&amp;quot; function. The next entity on the stack is the integer to convert.&lt;br /&gt;
==== OP_67 ====&lt;br /&gt;
This is a simple 1 byte opcode that is added to the stack once its read. It is used for the &amp;quot;getTime()&amp;quot; function.&lt;br /&gt;
==== OP_68 ====&lt;br /&gt;
This is a simple 1 byte opcode that is added to the stack once its read. It is used for the &amp;quot;getDvar()&amp;quot; function. The next entity on the stack is the dvar to get, typically an OP_5C for the dvar&#039;s hash.&lt;br /&gt;
==== OP_69 ====&lt;br /&gt;
This is a simple 1 byte opcode that is added to the stack once its read. It is used for the &amp;quot;getDvarInt()&amp;quot; function. The next entity on the stack is the dvar to get, typically an OP_5C for the dvar&#039;s hash.&lt;br /&gt;
==== OP_6A ====&lt;br /&gt;
This is a simple 1 byte opcode that is added to the stack once its read. It is used for the &amp;quot;getDvarFloat()&amp;quot; function. The next entity on the stack is the dvar to get, typically an OP_5C for the dvar&#039;s hash.&lt;br /&gt;
==== OP_70 ====&lt;br /&gt;
This is an odd 1 byte opcode. It appears to replace the previous opcode on the stack with an OP_GetZero.&lt;br /&gt;
==== OP_71 ====&lt;br /&gt;
This is an odd 1 byte opcode that is added to the stack once read. When dumping, it appears to throw away the first item on the stack, then performs an OP_inc on the next item.&lt;br /&gt;
==== OP_7B ==== &lt;br /&gt;
This opcode is used to denote developer code sections. These sections are outlined by &amp;quot;/#&amp;quot; and &amp;quot;#/&amp;quot; in raw text and are only ran when the dvars &amp;quot;developer&amp;quot; and &amp;quot;developer_script&amp;quot; are set to true. The section starts at this opcode, and the end is defined at&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
(++currentFunctionDataOffset) &amp;amp;= 0xFFFFFFFE;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
At this point there is a short value that holds the length of this code section at which point the end marker will be.&lt;br /&gt;
&lt;br /&gt;
== Source Format ==&lt;br /&gt;
The source format for GSCs is very well known. Simply a code file (text) with a .gsc extension.&lt;/div&gt;</summary>
		<author><name>Therifboy</name></author>
	</entry>
	<entry>
		<id>https://codresearch.dev/index.php?title=ScriptParseTree_Asset&amp;diff=424</id>
		<title>ScriptParseTree Asset</title>
		<link rel="alternate" type="text/html" href="https://codresearch.dev/index.php?title=ScriptParseTree_Asset&amp;diff=424"/>
		<updated>2014-05-04T18:04:45Z</updated>

		<summary type="html">&lt;p&gt;Therifboy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
[[Category:Assets]]&lt;br /&gt;
[[Category:BO2]]&lt;br /&gt;
The ScriptParseTree asset is a new asset in Black Ops 2 and this is the only Call of Duty game it has appeared in so far. This is Treyarch&#039;s answer to GSCs (Keep in mind that on Black Ops 1 GSCs were still [[:Rawfile Asset|rawfiles]]). Compared to IW&#039;s equivalent scriptfile asset, the ScriptParseTree has proven to give slightly more information and thus are easier to reverse. The basic structure is identical to the rawfiles&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
struct ScriptParseTree&lt;br /&gt;
{&lt;br /&gt;
  const char *name;&lt;br /&gt;
  int len;&lt;br /&gt;
  const char *buffer;&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Simply an uncompressed buffer holding the GSC data. The binary data is then passed to the GSC Virtual Machine (VM) to be ran. Now for the header of the binary data&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#define GSCMagic = 0x804753430D0A0006&lt;br /&gt;
&lt;br /&gt;
struct GSCHeader&lt;br /&gt;
{&lt;br /&gt;
  __int64 magic;&lt;br /&gt;
       int unknown1;&lt;br /&gt;
  unsigned int includeSectionOffset;&lt;br /&gt;
  unsigned int usingAnimtreeSectionOffset;&lt;br /&gt;
  unsigned int executionDataSectionOffset;&lt;br /&gt;
  unsigned int argumentSectionOffset;&lt;br /&gt;
  unsigned int functionDeclSectionOffset;&lt;br /&gt;
  unsigned int callFunctionSectionOffset;&lt;br /&gt;
       char unknown2[0xC];&lt;br /&gt;
  unsigned short nameOffset;&lt;br /&gt;
  unsigned short totalArgumentCount;&lt;br /&gt;
  unsigned short functionDeclCount;&lt;br /&gt;
  unsigned short callFunctionCount;&lt;br /&gt;
       int unknown3;&lt;br /&gt;
  byte includeSectionCount;&lt;br /&gt;
  byte usingAnimtreeCount;&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Following the header is a section of null terminated strings (undetermined size/count). This section is also padded at the end to a 4-byte buffer. The following sections will reference back to this section when a string is used. Keep in mind that the offsets are simply just an offset in the buffer.&lt;br /&gt;
=== Include Section ===&lt;br /&gt;
The first known section after the string table is the include section, and this should be the first section dumped as well. This section is used to replace the following in a raw gsc&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#include maps\mp\_utility;&lt;br /&gt;
#include common_scripts\utility;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
The include section is probably the easiest section to reverse. Each include exists as a single integer which holds the offset of the include&#039;s string in the buffer. &lt;br /&gt;
=== Using Animtree Section ===&lt;br /&gt;
Although this section doesn&#039;t follow the include section, it is what needs to be dumped second. When a GSC wants to directly access and animtree, then the following code is added (for animtree &amp;quot;mp_vehicles&amp;quot;)&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#using_animtree( &amp;quot;mp_vehicles&amp;quot; );&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Then animations can be accessed from the tree as follows (Using the %)&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
destructible_anims[ &amp;quot;car&amp;quot; ] = %veh_car_destroy;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Knowing this, the binary data section can be reversed fairly easily. The structure for their definitions in this section is&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
struct Reference&lt;br /&gt;
{&lt;br /&gt;
  unsigned short name;&lt;br /&gt;
  unsigned short xrefOffset;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
struct AnimTree&lt;br /&gt;
{&lt;br /&gt;
	unsigned short nameOffset;&lt;br /&gt;
	unsigned short pathOffset; //Paths do not exist for animtrees (so far)&lt;br /&gt;
	unsigned short referenceCount;&lt;br /&gt;
	Reference references[0];&lt;br /&gt;
	&lt;br /&gt;
	static AnimTree* create(unsigned short referenceCount)&lt;br /&gt;
	{&lt;br /&gt;
		AnimTree* temp = (AnimTree*)malloc(sizeof(AnimTree) + referenceCount * sizeof(unsigned int));&lt;br /&gt;
		temp-&amp;gt;referenceCount = referenceCount;&lt;br /&gt;
		return temp;&lt;br /&gt;
	}&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
XRefs are explained in better detail in the code section. Each animtree thats included will have an AnimTree struct, and every time an animation is used it will be defined in the references.&lt;br /&gt;
=== Argument Section ===&lt;br /&gt;
The argument section not only defines any function arguments that are defined with function declarations, but any local variable a function might create. Although they are defined the same, the difference between the two is highlighted in the code section. Each argument will be defined as follows&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
struct Argument&lt;br /&gt;
{&lt;br /&gt;
	unsigned short nameOffset;&lt;br /&gt;
	unsigned byte referenceCount;&lt;br /&gt;
		signed char unknown;&lt;br /&gt;
	unsigned int references[0];&lt;br /&gt;
  &lt;br /&gt;
	static Argument* create(unsigned char referenceCount)&lt;br /&gt;
	{&lt;br /&gt;
		Argument* temp = (Argument*)malloc(sizeof(Argument) + referenceCount * sizeof(unsigned int));&lt;br /&gt;
		temp-&amp;gt;referenceCount = referenceCount;&lt;br /&gt;
		return temp;&lt;br /&gt;
	}&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
The references will explained in more detail in the code section.&lt;br /&gt;
=== Function Call Section ===&lt;br /&gt;
If a function is called by a function in this GSC, it must be defined here in the function call section, even if that function is located inside this GSC. First the struct&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
struct FunctionCall&lt;br /&gt;
{&lt;br /&gt;
  unsigned short nameOffset;&lt;br /&gt;
  unsigned short pathOffset;&lt;br /&gt;
  unsigned short referenceCount;&lt;br /&gt;
  byte paramCount;&lt;br /&gt;
  byte flag;&lt;br /&gt;
  unsigned int references[0];&lt;br /&gt;
  &lt;br /&gt;
  static FunctionCall* create(unsigned short referenceCount)&lt;br /&gt;
  {&lt;br /&gt;
	FunctionCall* temp = (FunctionCall*)malloc(sizeof(FunctionCall) + referenceCount * sizeof(unsigned int));&lt;br /&gt;
	temp-&amp;gt;referenceCount = referenceCount;&lt;br /&gt;
	return temp;&lt;br /&gt;
  }&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
NameOffset obviously holds the name of the called function. References are explained in the code section. If the function is not located in this GSC or in a &amp;quot;using&amp;quot; GSC, then the function must have a path with the name of the GSC that it is defined in, and this is where the pathOffset points to. eg&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
thread maps\mp\gametypes\_spawning::init();&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
=== Function Declaration Section ===&lt;br /&gt;
This is the section that will be cycled through when dumping the GSC. Every function that is defined in this GSC is here. &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
struct FunctionDeclaration&lt;br /&gt;
{&lt;br /&gt;
       int unknown1;&lt;br /&gt;
  unsigned int executionDataOffset;&lt;br /&gt;
  unsigned short nameOffset;&lt;br /&gt;
       byte unknown2;&lt;br /&gt;
  byte argumentCount;&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
The executionDataOffset is an offset in the code section defining where this function begins.&lt;br /&gt;
=== Executable Data ===&lt;br /&gt;
This section is by far the trickiest section. This is where the actual code the functions are compiled into is stored. The first thing that will be needed is a list of operation codes (OPcodes). These opcodes should be the same for all systems.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
enum OPCodes : char&lt;br /&gt;
{&lt;br /&gt;
  OP_Return			= 0x1,&lt;br /&gt;
  OP_GetUndefined		= 0x2,&lt;br /&gt;
  OP_GetZero			= 0x3,&lt;br /&gt;
  OP_GetByte			= 0x4,&lt;br /&gt;
  OP_GetNegByte			= 0x5,&lt;br /&gt;
  OP_GetUnsignedShort		= 0x6,&lt;br /&gt;
  OP_GetNegUnsignedShort     	= 0x7,&lt;br /&gt;
  OP_GetInteger			= 0x8,&lt;br /&gt;
  OP_GetFloat			= 0x9,&lt;br /&gt;
  OP_GetString			= 0xA,&lt;br /&gt;
  OP_GetIString			= 0xB,&lt;br /&gt;
  OP_GetLevelObject		= 0xD,&lt;br /&gt;
  OP_GetSelf			= 0xF,&lt;br /&gt;
  OP_GetLevel			= 0x10,&lt;br /&gt;
  OP_GetGame			= 0x11,&lt;br /&gt;
  OP_GetAnimation		= 0x13,&lt;br /&gt;
  OP_GetGameRef			= 0x14,&lt;br /&gt;
  OP_GetFunction		= 0x15,&lt;br /&gt;
  OP_CreateLocalVariable	= 0x17,&lt;br /&gt;
  OP_EvalLocalVariableCached1   = 0x19,&lt;br /&gt;
  OP_EvalArray			= 0x1A,&lt;br /&gt;
  OP_EvalArrayRef		= 0x1C,&lt;br /&gt;
  OP_ClearArray			= 0x1D,&lt;br /&gt;
  OP_EmptyArray			= 0x1E,&lt;br /&gt;
  OP_GetSelfObject		= 0x1F,&lt;br /&gt;
  OP_EvalFieldVariable		= 0x20,&lt;br /&gt;
  OP_EvalFieldVariableRef	= 0x21,&lt;br /&gt;
  OP_ClearFieldVariable		= 0x22,&lt;br /&gt;
  OP_24 = 0x24,&lt;br /&gt;
  OP_25 = 0x25,&lt;br /&gt;
  OP_checkclearparams		= 0x26,&lt;br /&gt;
  OP_EvalLocalVariableRefCached = 0x27,&lt;br /&gt;
  OP_SetVariableField		= 0x28,&lt;br /&gt;
  OP_CallBuiltin		= 0x29,&lt;br /&gt;
  OP_ScriptMethodCall		= 0x2A,&lt;br /&gt;
  OP_wait			= 0x2B,&lt;br /&gt;
  OP_waittillFrameEnd		= 0x2C,&lt;br /&gt;
  OP_PreScriptCall		= 0x2D,&lt;br /&gt;
  OP_ScriptFunctionCall		= 0x2E,&lt;br /&gt;
  OP_ScriptFunctionCallPointer	= 0x2F,&lt;br /&gt;
  OP_ScriptMethodCall2		= 0x30,&lt;br /&gt;
  OP_ScriptMethodCallPointer	= 0x31,&lt;br /&gt;
  OP_ScriptThreadCall		= 0x32,&lt;br /&gt;
  OP_ScriptThreadCallPointer	= 0x33,&lt;br /&gt;
  OP_ScriptMethodThreadCall	= 0x34,&lt;br /&gt;
  OP_ScriptMethodThreadCallPointer = 0x35,&lt;br /&gt;
  OP_clearparams		= 0x36,&lt;br /&gt;
  OP_37 = 0x37,&lt;br /&gt;
  OP_BoolNot			= 0x39,&lt;br /&gt;
  OP_JumpOnFalse		= 0x3B,&lt;br /&gt;
  OP_JumpOnTrue			= 0x3C,&lt;br /&gt;
  OP_JumpOnFalseExpr		= 0x3D,&lt;br /&gt;
  OP_JumpOnTrueExpr		= 0x3E,&lt;br /&gt;
  OP_jump			= 0x3F,&lt;br /&gt;
  OP_inc			= 0x41,&lt;br /&gt;
  OP_dec			= 0x42,&lt;br /&gt;
  OP_bit_or			= 0x43,&lt;br /&gt;
  OP_bit_and			= 0x45,&lt;br /&gt;
  OP_equality			= 0x46,&lt;br /&gt;
  OP_inequality			= 0x47,&lt;br /&gt;
  OP_less			= 0x48,&lt;br /&gt;
  OP_greater			= 0x49,&lt;br /&gt;
  OP_less_equal			= 0x4A,&lt;br /&gt;
  OP_greater_equal		= 0x4B,&lt;br /&gt;
  OP_plus			= 0x4E,&lt;br /&gt;
  OP_minus			= 0x4F,   &lt;br /&gt;
  OP_multiply			= 0x50,&lt;br /&gt;
  OP_divide			= 0x51,&lt;br /&gt;
  OP_mod			= 0x52,&lt;br /&gt;
  OP_size			= 0x53,&lt;br /&gt;
  OP_waittillmatch		= 0x54,&lt;br /&gt;
  OP_waittill			= 0x55,&lt;br /&gt;
  OP_notify			= 0x56,&lt;br /&gt;
  OP_endon			= 0x57,&lt;br /&gt;
  OP_voidCodepos		= 0x58,&lt;br /&gt;
  OP_switch			= 0x59,&lt;br /&gt;
  OP_endswitch			= 0x5A,&lt;br /&gt;
  OP_vector			= 0x5B,&lt;br /&gt;
  OP_5C = 0x5C,&lt;br /&gt;
  OP_5E = 0x5E,&lt;br /&gt;
  OP_5F = 0x5F,&lt;br /&gt;
  OP_60 = 0x60,&lt;br /&gt;
  OP_61 = 0x61,&lt;br /&gt;
  OP_62 = 0x62,&lt;br /&gt;
  OP_63 = 0x63,&lt;br /&gt;
  OP_64 = 0x64,&lt;br /&gt;
  OP_65 = 0x65,&lt;br /&gt;
  OP_66 = 0x66,&lt;br /&gt;
  OP_67 = 0x67,&lt;br /&gt;
  OP_68 = 0x68,&lt;br /&gt;
  OP_69 = 0x69,&lt;br /&gt;
  OP_6A = 0x6A,&lt;br /&gt;
  OP_70 = 0x70,&lt;br /&gt;
  OP_71 = 0x71,&lt;br /&gt;
  OP_7B = 0x7B,&lt;br /&gt;
  OP_count			= 0x7C,&lt;br /&gt;
  OP_NOP			= 0x7F&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Notice that 0x7B is the highest opcode, but 0x7F is still valid. In truth anything over 0x7B will register as NOP. The executable does some odd jumping around for each OP code, so a recap of each OP code will try to be added. In the following functions &amp;quot;currentFunctionDataOffset&amp;quot; is defined as an integer that points to the current OP code being read. Keep in mind that an OP code is read, the data offset is increased by 1, and then the following code is ran. OP codes are parsed in the order they are read, but if a dump is being done then parts are going to be dumped in reverse order. Here is an example of a series of OP codes...&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
OP_PreScriptCall&lt;br /&gt;
OP_GetString		&amp;quot;1350&amp;quot;&lt;br /&gt;
OP_GetString		&amp;quot;scr_veh_health_tank&amp;quot;&lt;br /&gt;
OP_CallBuiltin 		2, &amp;quot;setdvar&amp;quot;&lt;br /&gt;
OP_clearparams&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
This would be the &amp;quot;asm&amp;quot; of the GSC, and would look like this...&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
setdvar( &amp;quot;scr_veh_health_tank&amp;quot;, &amp;quot;1350&amp;quot; );&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
==== OP_Return ====&lt;br /&gt;
The return OP is exactly as expected. Any OP codes in the stack go after a &amp;quot;return&amp;quot;. There is no data skipped, it is simply a 1 byte opcode. Keep in mind that if the game reaches a return, it leaves the function however for a complete dump, data must continue to be read and sometimes this data is unnecessary.&lt;br /&gt;
==== OP_GetUndefined &amp;amp; OP_GetZero ====&lt;br /&gt;
This simply represents the &amp;quot;undefined&amp;quot;/0 element in GSCs. It is a simple 1 byte opcode, and once read it is put right onto the stack. When dumping from the stack, simply print &amp;quot;undefined&amp;quot;/0 and continue.&lt;br /&gt;
==== OP_GetByte &amp;amp; OP_GetNegByte ====&lt;br /&gt;
These are used to hold any numbers that are small enough to be held in 1 byte. These are 2 byte opcode in that the first byte is the opcode and the second byte is an unsigned value. The opcode is added to the stack once read. When dumping from the stack the value is simply printed and then continued. Keep in mind that OP_GetNegByte should get a negative symbol before the value is printed.&lt;br /&gt;
==== OP_GetUnsignedShort &amp;amp; OP_GetNegUnsignedShort ====&lt;br /&gt;
These are used to hold any numbers that are small enough to be held in 2 byte. After reading the opcode, the following is used to determine the offset of the unsigned short value&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
(++currentFunctionDataOffset) &amp;amp;= 0xFFFFFFFE;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Then &amp;quot;currentFunctionDataOffset&amp;quot; will be the offset of the unsigned short value to use. Then skip another 2 bytes for that value to continue reading. The opcode is added to the stack once read. When dumping from the stack the value is simply printed and then continued. Keep in mind that OP_GetNegUnsignedShort should get a negative symbol before the value is printed.&lt;br /&gt;
==== OP_GetInteger &amp;amp; OP_GetFloat ====&lt;br /&gt;
OP_GetInteger is used for any numbers that are large enough to warrant a signed integer, while OP_GetFloat is used for bigger numbers and decimals. After reading the opcode, the following is used to determine the offset of the value to get&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
currentFunctionDataOffset += 3;&lt;br /&gt;
currentFunctionDataOffset &amp;amp;= 0xFFFFFFFC;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
At this point &amp;quot;currentFunctionDataOffset&amp;quot; will be the offset of the value to get, then skip another 4 bytes past the value to continue reading. The opcode is then added to the stack. When dumping the value is simply printed and then continued;&lt;br /&gt;
==== OP_GetString &amp;amp; OP_GetIString ====&lt;br /&gt;
These are very clearly used to reference strings in code. Strings are found by their references. To get the offset of the reference use the following&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
(++currentFunctionDataOffset) &amp;amp;= 0xFFFFFFFE;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
In the argument section should be an argument with a reference that is equal to &amp;quot;currentFunctionDataOffset&amp;quot; at this point. The name of the argument is the offset of the string to use in the string pool from the beginning of the GSC. Add another 2 to currentFunctionDataOffset to skip past the reference to continue reading. Keep in mind that OP_GetIString is used to get localized strings, and a &amp;amp; should be a added before the quotes.&lt;br /&gt;
==== OP_GetLevelObject &amp;amp; OP_GetLevel &amp;amp; OP_GetSelf &amp;amp; OP_GetSelfObject &amp;amp; OP_GetGame &amp;amp; OP_GetGameRef ====&lt;br /&gt;
All of these are simple 1 byte opcodes that are added to the stack once they are read. They represent (and should be printed as) the &amp;quot;game&amp;quot;, &amp;quot;level&amp;quot; and &amp;quot;self&amp;quot; objects in GSC code.&lt;br /&gt;
==== OP_GetAnimation ====&lt;br /&gt;
These are used to reference animations in an animtree that was included to this GSC. The name of the animation is found by a reference. To get the offset of the reference&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
currentFunctionDataOffset += 3;&lt;br /&gt;
currentFunctionDataOffset &amp;amp;= 0xFFFFFFFC;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
There should be an animtree in the animtree include section that has an animation with a reference equal to &amp;quot;currentFunctionDataOffset&amp;quot; at this point. Add another 4 bytes to skip past the reference to continue reading opcodes. After this is read it is added to the stack. When dumping the reference animation name should be found and dumped (without quotes) preceeded by a % sign.&lt;br /&gt;
==== OP_GetFunction ====&lt;br /&gt;
This is used to reference a function without calling it. This allows you to set a variable to a function, and then call the variable later. There should be a function call with a reference equal to &amp;quot;currentFunctionDataOffset&amp;quot;, and this is the function to use. This is then added to the stack. After that the following code is performed&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
currentFunctionDataOffset += 3;&lt;br /&gt;
currentFunctionDataOffset &amp;amp;= 0xFFFFFFFC;&lt;br /&gt;
currentFunctionDataOffset += 4;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
to continue reading. When dumping the function name should be printed after &amp;quot;::&amp;quot;.&lt;br /&gt;
==== OP_CreateLocalVariable ====&lt;br /&gt;
This opcode is used at the beginning of any function with arguments or local variables to define them. After the opcode is a single byte that is the number to define. Each variable argument is found by getting the reference for it in the argument section. To get the offset of each reference&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
(++currentFunctionDataOffset) &amp;amp;= 0xFFFFFFFE;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
That gets ran before to find a reference offset. There should be a argument with a reference equal to the &amp;quot;currentFunctionDataOffset&amp;quot;. Then 2 is added to skip past the current reference before the above is started again. The function declaration states the number of arguments, any extra are local variables. Keep in mind the stack should be clear after this is ran.&lt;br /&gt;
==== OP_EvalLocalVariableCached1 &amp;amp; OP_EvalLocalVariableRefCached ====&lt;br /&gt;
This is a simple 2 byte opcode used to reference an argument or local variable. The second byte is the index of the local variable to use, defined by OP_CreateLocalVariable. This is then added to the stack to be dumped. To dump the local variable must be looked up, the argument found and the name referenced.&lt;br /&gt;
==== OP_EvalArray &amp;amp; OP_EvalArrayRef ====&lt;br /&gt;
These are simple 1 byte opcodes used to reference elements in an array. It is simply added to the stack to be dumped. When dumping, the next entity on the stack is the array to use and the next entity is the index in the array (Indexes are not always numbers).&lt;br /&gt;
==== OP_ClearArray ====&lt;br /&gt;
This is a 1 byte opcode used to set an array element to &amp;quot;undefined&amp;quot;. This is not added to the stack, instead the stack is processed. The first entity on the stack is the array to use and the second is the array index. This element is then set to undefined. At the end of this, the stack should be empty.&lt;br /&gt;
==== OP_EmptyArray ====&lt;br /&gt;
This is a simple 1 byte opcode used to denote an empty array (&amp;quot;[]&amp;quot;). It is added right to the stack and simply printed when dumping. &lt;br /&gt;
==== OP_EvalFieldVariable &amp;amp; OP_EvalFieldVariableRef ====&lt;br /&gt;
These opcodes are used to reference any field variable. The names of the field variable is found by the offset of a reference. To find the offset of the reference&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
(++currentFunctionDataOffset) &amp;amp;= 0xFFFFFFFE;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
There should then be an argument in the argument section that has a reference equal to &amp;quot;currentFunctionDataOffset&amp;quot;. Skip another 2 bytes past the reference to continue reading opcodes. The opcode is then added to the stack to be dumped later. The next entity on the stack is the item the field variable is for. &lt;br /&gt;
==== OP_ClearFieldVariable ====&lt;br /&gt;
This opcode is used to set a field variable element to &amp;quot;undefined&amp;quot;. The name of the field variable is found by the offset of a reference. To find the offset of a reference&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
(++currentFunctionDataOffset) &amp;amp;= 0xFFFFFFFE;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
There should then be an argument in the argument section that has a reference equal to &amp;quot;currentFunctionDataOffset&amp;quot;. Skip another 2 bytes past the reference to continue reading opcodes. This opcode is not added to the stack, instead the stack is processed. The only entity on the stack should be the item the field variable is for. Once this is processed the stack should be empty. &lt;br /&gt;
==== OP_checkclearparams &amp;amp; OP_25 ====&lt;br /&gt;
Used at the beginning of a function with no arguments. Clears the stack without processing it. &lt;br /&gt;
==== OP_SetVariableField ====&lt;br /&gt;
This is a 1 byte opcode used to set an entity to anything else. This is not added to the stack, instead the stack is processed. The first entity on the stack is the entity to set (left side of the &amp;quot;=&amp;quot; sign) with the second being the entity setting with (right side). At the end of this, the stack should be empty.&lt;br /&gt;
==== OP_CallBuiltin ====&lt;br /&gt;
This opcode is used to call a GSC function that is predefined in the executable. The name of the GSC function is found by a reference. The offset of the reference is actually the offset of this opcode. In the function call section should be a definition with a reference to this opcode. This opcode is then added to the stack to be dumped. When dumping, there should be an entity on the stack for each expected argument. To get to the next opcode, perform the following&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
currentFunctionDataOffset += 4;&lt;br /&gt;
currentFunctionDataOffset &amp;amp;= 0xFFFFFFFC;&lt;br /&gt;
currentFunctionDataOffset += 4;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Before adding the last 4, &amp;quot;currentFunctionDataOffset&amp;quot; will point to a value that holds the offset of the function to use in memory.&lt;br /&gt;
==== OP_ScriptMethodCall ====&lt;br /&gt;
This opcode is used to call a GSC function on an entity that is defined in another GSC. The name of the GSC function is found by a reference. The offset of the reference is actually the offset of this opcode. In the function call section should be a definition with a reference to this opcode. This opcode is then added to the stack to be dumped. When dumping, the first entity on the stack will be the entity the function is being called upon, followed by an entity for each argument in the function. To get to the next opcode, perform the following&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
currentFunctionDataOffset += 4;&lt;br /&gt;
currentFunctionDataOffset &amp;amp;= 0xFFFFFFFC;&lt;br /&gt;
currentFunctionDataOffset += 4;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Before adding the last 4, &amp;quot;currentFunctionDataOffset&amp;quot; will point to a value that holds the offset of the function to use in memory.&lt;br /&gt;
==== OP_wait ====&lt;br /&gt;
This is a simple 1 byte opcode used for the &amp;quot;wait()&amp;quot; function. This is not added to the stack, instead the stack is processed. The first (and only) entity on the stack should be the number of milliseconds to wait. At the end of this, the stack should be empty.&lt;br /&gt;
==== OP_waittillframeend ====&lt;br /&gt;
This is a simple 1 byte opcode used for &amp;quot;waittillframeend&amp;quot;. This is not added to the stack, and is always ran with an empty stack.&lt;br /&gt;
==== OP_PreScriptCall ====&lt;br /&gt;
This is a simple 1 byte opcode used before all instructions and is equivalent to NOP.&lt;br /&gt;
==== OP_Script Call Functions ====&lt;br /&gt;
These opcodes are used to call a function and are very similar. The names of the function to call are found by a reference, and for all of these opcodes the reference is the offset of the opcode. &amp;quot;Method&amp;quot; opcodes have an extra entity on the stack as the entity the function is called upon. &amp;quot;Thread&amp;quot; opcodes are threading the function they call. The &amp;quot;Pointer&amp;quot; opcodes do not have a reference with the function&#039;s name, instead the function is a variable and an extra entity is on the stack. There will be an entity on the stack for each expected argument. To read past OP_ScriptFunctionCall, OP_ScriptMethodCall, OP_ScriptMethodCall2, and OP_ScriptMethodThreadCall, do&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
currentFunctionDataOffset += 4;&lt;br /&gt;
currentFunctionDataOffset &amp;amp;= 0xFFFFFFFC;&lt;br /&gt;
currentFunctionDataOffset += 4;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
The &amp;quot;Pointer&amp;quot; opcodes are all 2 byte opcdes. All these opcodes are added to the stack to be dumped. &lt;br /&gt;
==== OP_clearparams ====&lt;br /&gt;
This is a 1 byte opcode and is used most often to process the stack. The stack is simply processed and should be clear by the end of this running.&lt;br /&gt;
==== OP_37 ====&lt;br /&gt;
Not very well understood, skipping it seems to work fine.&lt;br /&gt;
==== OP_BoolNot ====&lt;br /&gt;
This is a simple 1 byte opcode used for the logical NOT operator (&amp;quot;!&amp;quot;). This is simply added to the stack to be dumped. When dumping, the next entity on the stack is the value to invert. &lt;br /&gt;
==== OP_jump Codes ====&lt;br /&gt;
Rather than have logical AND and OR operators in this language, it is similar to PPC in that there are &amp;quot;branches&amp;quot; or &amp;quot;jumps&amp;quot;. Rather than using an AND operator, a series of conditional jumps are used to produce the same result. OP_jump is a simple absolute jump value. After reading the opcode,&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
(++currentFunctionDataOffset) &amp;amp;= 0xFFFFFFFE;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
At this point &amp;quot;currentFunctionDataOffset&amp;quot; will point to a &amp;quot;short&amp;quot; data value. This will be an offset in the GSC to jump to (Usually just a few bytes away). Skip another 2 bytes past this offset to continue reading opcodes. This opcode is then added to the stack to be dumped. The next entity in the stack is the condition to jump on.&lt;br /&gt;
==== Logical and Bitwise Operators ====&lt;br /&gt;
OP_inc &amp;amp; OP_dec are skipped by performing this operation&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
(++currentFunctionDataOffset) &amp;amp;= 0xFFFFFFFE;&lt;br /&gt;
currentFunctionDataOffset += 2;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
They are added to the stack to be dumped. When dumping, the next member of the stack is the entity to shift, followed by &amp;quot;++&amp;quot; for increase and &amp;quot;--&amp;quot; for decrease.&lt;br /&gt;
&lt;br /&gt;
The next few operators are all 1 byte operators. They are simply added to the stack to be dumped. When dumping, the next entity on the stack is the right side of the operator with the nxt entity being the left side.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|&#039;&#039;&#039;opcode&#039;&#039;&#039;||&#039;&#039;&#039;Operator&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|OP_bit_or||&amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|OP_bit_and||&amp;amp;&lt;br /&gt;
|-&lt;br /&gt;
|OP_equality||==&lt;br /&gt;
|-&lt;br /&gt;
|OP_inequality||!=&lt;br /&gt;
|-&lt;br /&gt;
|OP_less||&amp;lt;&lt;br /&gt;
|-&lt;br /&gt;
|OP_greater||&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|OP_less_equal||&amp;lt;=&lt;br /&gt;
|-&lt;br /&gt;
|OP_greater_equal||&amp;gt;=&lt;br /&gt;
|-&lt;br /&gt;
|OP_plus||+&lt;br /&gt;
|-&lt;br /&gt;
|OP_minus||-&lt;br /&gt;
|-&lt;br /&gt;
|OP_multiply||*&lt;br /&gt;
|-&lt;br /&gt;
|OP_divide||/&lt;br /&gt;
|-&lt;br /&gt;
|OP_mod||%&lt;br /&gt;
|}&lt;br /&gt;
==== OP_size ====&lt;br /&gt;
This opcode is used to get the &amp;quot;.size&amp;quot; of an array entity. Simply added to the stack for dumping, the next stack entity is the array entity. &lt;br /&gt;
==== OP_waittillmatch &amp;amp; OP_waittill &amp;amp; OP_notify ====&lt;br /&gt;
These 1 byte opcodes codes are used in combination with OP_endon for cross-thread syncing. Rather than being added to the stack, this processes the stack. The first entity on the stack will be the entity the function is being referenced to. The constant strings are next on the stack and should be the only remaining items on the stack. Following these opcodes are a OP_24 for each variable to pass (Used to pass data at the point of the sync). This is a 2 byte opcode, with the second byte being the index of the local variable defined at the beginning of the function. &lt;br /&gt;
==== OP_endon ====&lt;br /&gt;
This 1 byte opcode is used in combination with the above codes for cross-thread syncing. Rather than being added to the stack, this processes the stack. The first entity on the stack will be the entity this function is being referenced to. The constant strings to end on are then placed on the stack.&lt;br /&gt;
==== OP_voidCodepos ====&lt;br /&gt;
Equivelent to NOP.&lt;br /&gt;
==== OP_switch &amp;amp; OP_endswitch ====&lt;br /&gt;
When a switch is used by the game, only the needed case is ran at a time. However when dumping, all cases must be processed. There are a few points of interest when using the switch, the first is found by doing&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
currentFunctionDataOffset += 3;&lt;br /&gt;
currentFunctionDataOffset &amp;amp;= 0xFFFFFFFC;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
At this point &amp;quot;currentFunctionDataOffset&amp;quot; is a partial pointer to an integer, the case definition location (The switch case code is directly after this integer, with the case definitions directly after that). After setting &amp;quot;currentFunctionDataOffset&amp;quot; to this integer, perform this to get to the actual case definitions&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
currentFunctionDataOffset += 7;&lt;br /&gt;
currentFunctionDataOffset &amp;amp;= 0xFFFFFFFC;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Currently &amp;quot;currentFunctionDataOffset&amp;quot; will point to directly after the switch case code. The first integer is the switch case count. Following this is 8 bytes for each case in the switch. The first short in these 8 bytes is the &amp;quot;switch case type&amp;quot;. There are currently 2 known switch types, integer (0x80) and string (0). If the type is integer then the short after the type is the index for this case. If the type is a string, then there will be an argument in the argument section with the offset of the short after the type. The 4 bytes after these 2 shorts is the offset for the section of code for this case. If the type is 0 and the short for the reference is 0, then this is the &amp;quot;default&amp;quot; case. The OP_endswitch is found at the end of the section of code for this switch, just before the case defintions. It is a 1 byte opcode, and after reading this the switch should be ended and the case defintions skipped. &lt;br /&gt;
==== OP_vector ====&lt;br /&gt;
This is a simple 1 byte opcode. Vectors are a standard l-type in GSC and simply defined in raw text by doing (number1, number2, number3). Once this opcode is read it is added to the stack to be dumped. When dumping there must be at least 3 more entities on the stack, one for each item in the vector. &lt;br /&gt;
==== OP_5C ====&lt;br /&gt;
This opcode is used to reference dvar entities in GSC. In GSC when referencing a dvar it appears as #&amp;quot;dvarName&amp;quot;. Rather than storing the dvarName directly, the hash is stored and any dvar with a matching hash is used. To get the hash, perform&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
currentFunctionDataOffset += 3;&lt;br /&gt;
currentFunctionDataOffset &amp;amp;= 0xFFFFFFFC;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Then &amp;quot;currentFunctionDataOffset&amp;quot; will point to an integer that is the dvar&#039;s hash. This is then added to the stack to be dumped. To continue reading opcodes, skip another 4 bytes past the hash.&lt;br /&gt;
==== OP_5E ====&lt;br /&gt;
This 2 byte opcode is used to store very simple vectors. The second byte in the opcode is the flags for the vector elements. Each element in the vector is 0 by default. The first element is &amp;quot;-1&amp;quot; if the bitflag 0x10 is set, and &amp;quot;1&amp;quot; if 0x20 is set. The second element is &amp;quot;-1&amp;quot; if the bitflag 4 is set, and &amp;quot;1&amp;quot; if 8 is set. The third element is &amp;quot;-1&amp;quot; if the bitflag 1 is set, and &amp;quot;1&amp;quot; if 2 is set.&lt;br /&gt;
==== OP_5F ====&lt;br /&gt;
This is a simple 1 byte opcode that is added to the stack once its read. It is used for the &amp;quot;isDefined()&amp;quot; function. The next entity on the stack is the entity to check for existence.&lt;br /&gt;
==== OP_60 ====&lt;br /&gt;
This is a simple 1 byte opcode that is added to the stack once its read. It is used for the &amp;quot;vector_scale()&amp;quot; function. The next entity on the stack is the vector entity to scale. The following entity is the scaler entity. &lt;br /&gt;
==== OP_61 ====&lt;br /&gt;
This is a simple 1 byte opcode that is added to the stack once its read. It is used for the &amp;quot;anglesToUp()&amp;quot; function. The next entity on the stack is the angles to convert.&lt;br /&gt;
==== OP_62 ====&lt;br /&gt;
This is a simple 1 byte opcode that is added to the stack once its read. It is used for the &amp;quot;anglesToRight()&amp;quot; function. The next entity on the stack is the angles to convert.&lt;br /&gt;
==== OP_63 ====&lt;br /&gt;
This is a simple 1 byte opcode that is added to the stack once its read. It is used for the &amp;quot;anglesToForward()&amp;quot; function. The next entity on the stack is the angles to convert.&lt;br /&gt;
==== OP_64 ====&lt;br /&gt;
This is a simple 1 byte opcode that is added to the stack once its read. It is used for the &amp;quot;angleClamp180()&amp;quot; function. The next entity on the stack is the angle to clamp.&lt;br /&gt;
==== OP_65 ====&lt;br /&gt;
This is a simple 1 byte opcode that is added to the stack once its read. It is used for the &amp;quot;vectorsToAngle()&amp;quot; function. The next entity on the stack is the vector to convert.&lt;br /&gt;
==== OP_66 ====&lt;br /&gt;
This is a simple 1 byte opcode that is added to the stack once its read. It is used for the &amp;quot;abs()&amp;quot; or &amp;quot;absolute value&amp;quot; function. The next entity on the stack is the integer to convert.&lt;br /&gt;
==== OP_67 ====&lt;br /&gt;
This is a simple 1 byte opcode that is added to the stack once its read. It is used for the &amp;quot;getTime()&amp;quot; function.&lt;br /&gt;
==== OP_68 ====&lt;br /&gt;
This is a simple 1 byte opcode that is added to the stack once its read. It is used for the &amp;quot;getDvar()&amp;quot; function. The next entity on the stack is the dvar to get, typically an OP_5C for the dvar&#039;s hash.&lt;br /&gt;
==== OP_69 ====&lt;br /&gt;
This is a simple 1 byte opcode that is added to the stack once its read. It is used for the &amp;quot;getDvarInt()&amp;quot; function. The next entity on the stack is the dvar to get, typically an OP_5C for the dvar&#039;s hash.&lt;br /&gt;
==== OP_6A ====&lt;br /&gt;
This is a simple 1 byte opcode that is added to the stack once its read. It is used for the &amp;quot;getDvarFloat()&amp;quot; function. The next entity on the stack is the dvar to get, typically an OP_5C for the dvar&#039;s hash.&lt;br /&gt;
==== OP_70 ====&lt;br /&gt;
This is an odd 1 byte opcode. It appears to replace the previous opcode on the stack with an OP_GetZero.&lt;br /&gt;
==== OP_71 ====&lt;br /&gt;
This is an odd 1 byte opcode that is added to the stack once read. When dumping, it appears to throw away the first item on the stack, then performs an OP_inc on the next item.&lt;br /&gt;
==== OP_7B ==== &lt;br /&gt;
This opcode is used to denote developer code sections. These sections are outlined by &amp;quot;/#&amp;quot; and &amp;quot;#/&amp;quot; in raw text and are only ran when the dvars &amp;quot;developer&amp;quot; and &amp;quot;developer_script&amp;quot; are set to true. The section starts at this opcode, and the end is defined at&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
(++currentFunctionDataOffset) &amp;amp;= 0xFFFFFFFE;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
At this point there is a short value that holds the length of this code section at which point the end marker will be.&lt;br /&gt;
&lt;br /&gt;
== Source Format ==&lt;br /&gt;
The source format for GSCs is very well known. Simply a code file (text) with a .gsc extension.&lt;/div&gt;</summary>
		<author><name>Therifboy</name></author>
	</entry>
</feed>