/* Do not edit this file unless you know what you are doing! */
"Games"
{
	"cstrike"
	{
		/* FFA patch bytes */
		"Keys"
		{
			"LagCompPatch_Windows"		"\x90\x90\x90\x90\x90\x90"
			"LagCompPatch_Linux"		"\x90\x90\x90\x90\x90\x90"
			"TakeDmgPatch1_Windows"		"\xEB"
			"TakeDmgPatch1_Linux"		"\x90\x90\x90\x90\x90\x90"
			"TakeDmgPatch2_Windows"		"\x90\xE9"
			"TakeDmgPatch2_Linux"		"\x90\x90\x90\x90\x90\x90"
		}
		"Offsets"
		{
			/* Patch offsets for FFA */
			"LagCompPatch"
			{
				"windows"		"41"
				"linux"			"62"
			}
			"TakeDmgPatch1"
			{
				"windows"		"513"
				"linux"			"1547"
			}
			"TakeDmgPatch2"
			{
				"windows"		"161"
				"linux"			"366"
			}
			/* Offset into gamerules constructor */
			"g_pGameRules"
			{
				"linux"			"40"
				"windows"		"32"
			}
			/* Virtual indexes */
			"IPointsForKill"
			{
				"windows"		"62"
				"linux"			"63"
			}
			"Weapon_GetSlot"
			{
				"windows"		"224"
				"linux"			"225"
			}
			"RemoveAllItems"
			{
				"windows"		"283"
				"linux"			"284"
			}
			"GiveAmmo"
			{
				"windows"		"213"
				"linux"			"214"
			}
			/* The next two are detour byte "save" counts */
			"DropWeaponsPatch"
			{
				"windows"		"7"
				"linux"			"8"
			}
			"CSWeaponDropPatch"
			{
				"windows"		"6"
				"linux"			"10"
			}
		}
		"Signatures"
		{
			"UTIL_Remove"
			{
				"library"		"server"
				"windows"		"\x8B\x44\x24\x04\x85\xC0\x74\x2A\x05\x2A\x2A\x00\x00\x89\x44\x24\x04\xE9\x2A\xFF\xFF\xFF"
				"linux"			"@_Z11UTIL_RemoveP11CBaseEntity"
			}
			"RoundRespawn"
			{
				"library"		"server"
				"windows"		"\x56\x8B\xF1\x8B\x06\xFF\x90\x2A\x04\x00\x00\x8B\x86\x2A\x0D\x00"
				"linux"			"@_ZN9CCSPlayer12RoundRespawnEv"
			}
			"OnTakeDamage"
			{
				"library"		"server"
				"windows"		"\x8B\x44\x24\x04\x81\xEC\x84\x00\x00\x00\x53\x56\x8B\xF1\x50\x8D\x4C\x24\x28\xE8\x2A\x2A\x2A\x2A\x8B\x44\x24\x4C\x83\xF8\xFF\x0F"
				"linux"			"@_ZN9CCSPlayer12OnTakeDamageERK15CTakeDamageInfo"
			}
			"WantsLagComp"
			{
				"library"		"server"
				"windows"		"\xA1\x2A\x2A\x2A\x2A\x83\xEC\x24\x83\x78\x2C\x00\x53\x56\x8B\x74\x24\x30\x57\x8B\xF9\x75\x2A\x8B\xCE\xE8\x2A\x2A\x2A\x2A\x8B\xCF"
				"linux"			"@_ZNK11CBasePlayer28WantsLagCompensationOnEntityEPKS_PK8CUserCmdPK7CBitVecILi2048EE"
			}
			"CGameRules"
			{
				"library"		"server"
				"windows"		"\x56\x68\x2A\x2A\x2A\x22\x8B\xF1\xE8\x2A\x2A\x00\x00\xC7\x06\x2A\x2A\x2A\x22\xA1\x2A\x2A\x2A\x22\x8B\x15\x2A\x2A\x2A\x22\x89\x2A"
				"linux"			"@_ZN10CGameRulesC1Ev"
			}
			"CSWeaponDrop"
			{
				"library"		"server"
				"windows"		"\x81\xEC\x2C\x01\x00\x00\x53\x55\x56\x57\x8B\xBC\x24\x40\x01\x00\x00\x32\xDB\x85\xFF\x8B\xF1\x0F"
				"linux"			"@_ZN9CCSPlayer12CSWeaponDropEP17CBaseCombatWeaponbb"
			}
			"DropWeapons"
			{
				"library"		"server"
				"windows"		"\x83\xEC\x48\x56\x57\x6A\x00\x68\x2A\x2A\x2A\x22\x8B\xF1\xE8\x2A\x2A\x2A\x2A\x85\xC0\x74\x0C\x6A\x01\x6A\x00\x50\x8B\xCE\xE8\x2A"
				"linux"			"@_ZN9CCSPlayer11DropWeaponsEv"
			}
		}
	}
}
