"Games"
{
	"#default"
	{
		"Offsets"
		{
			/* CBaseMultiplayerPlayer::CanBeAutobalanced()*/
			"CanBeAutobalanced"
			{
				"linux"		"503"
				"windows" 	"500"
			}

			/* CBaseEntity::EndTouch(CBaseEntity*) */
			"EndTouch"
			{
				"linux"		"114"
				"windows" 	"113"
			}

			/* CBaseEntity::FireBullets(FireBulletsInfo_t const&) */
			"FireBullets"
			{
				"linux"		"126"
				"windows" 	"125"
			}

			/* CBaseEntity::GetMaxHealth() const */
			"GetMaxHealth"
			{
				"linux"		"131"
				"windows" 	"130"
			}

			// NOTE: https://asherkin.github.io/vtable/ provides the correct windows offset, GDC does not appear to.
			/* CBaseEntity::NetworkStateChanged_m_hGroundEntity(void*) */
			"GroundEntChanged"
			{
				"linux"		"197"
				"windows" 	"195"
			}

			/* CBaseEntity::OnTakeDamage(CTakeDamageInfo const&) */
			"OnTakeDamage"
			{
				"linux"		"76"
				"windows" 	"75"
			}

			/* CBasePlayer::OnTakeDamage_Alive(CTakeDamageInfo const&) */
			"OnTakeDamage_Alive"
			{
				"linux"		"301"
				"windows" 	"300"
			}

			/* CBasePlayer::PreThink() */
			"PreThink"
			{
				"linux"		"368"
				"windows" 	"367"
			}

			/* CBasePlayer::PostThink() */
			"PostThink"
			{
				"linux"		"369"
				"windows" 	"368"
			}

			/* CBaseCombatWeapon::Reload() */
			"Reload"
			{
				"linux"		"307"
				"windows" 	"302"
			}

			/* CBaseEntity::SetTransmit(CCheckTransmitInfo*, bool) */
			"SetTransmit"
			{
				"linux"		"24"
				"windows" 	"23"
			}

			/* CBaseEntity::ShouldCollide(int, int) const */
			"ShouldCollide"
			{
				"linux"		"19"
				"windows" 	"17"
			}

			/* CBaseEntity::Spawn() */
			"Spawn"
			{
				"linux"		"31"
				"windows" 	"30"
			}

			/* CBaseEntity::StartTouch(CBaseEntity*) */
			"StartTouch"
			{
				"linux"		"112"
				"windows" 	"111"
			}

			/* CBaseEntity::Think() */
			"Think"
			{
				"linux"		"61"
				"windows" 	"60"
			}

			/* CBaseEntity::Touch(CBaseEntity*) */
			"Touch"
			{
				"linux"		"113"
				"windows" 	"112"
			}

			/* CBaseEntity::TraceAttack(CTakeDamageInfo const&, Vector const&, CGameTrace*, CDmgAccumulator*) */
			"TraceAttack"
			{
				"linux"		"74"
				"windows" 	"73"
			}

			/* CBaseEntity::Use(CBaseEntity*, CBaseEntity*, USE_TYPE, float) */
			"Use"
			{
				"linux"		"111"
				"windows" 	"110"
			}

			/* CBaseEntity::VPhysicsUpdate(IPhysicsObject*) */
			"VPhysicsUpdate"
			{
				"linux"		"175"
				"windows" 	"174"
			}

			/* CBaseEntity::Blocked(CBaseEntity*) */
			"Blocked"
			{
				"linux"		"116"
				"windows" 	"115"
			}

			/* CBaseCombatCharacter::Weapon_CanSwitchTo(CBaseCombatWeapon*) */
			"Weapon_CanSwitchTo"
			{
				"linux"		"294"
				"windows" 	"293"
			}

			/* CBaseCombatCharacter::Weapon_CanUse(CBaseCombatWeapon*) */
			"Weapon_CanUse"
			{
				"linux"		"285"
				"windows" 	"284"
			}

			/* CBaseCombatCharacter::Weapon_Drop(CBaseCombatWeapon*, Vector const*, Vector const*) */
			"Weapon_Drop"
			{
				"linux"		"291"
				"windows" 	"290"
			}

			/* CBaseCombatCharacter::Weapon_Equip(CBaseCombatWeapon*) */
			"Weapon_Equip"
			{
				"linux"		"287"
				"windows" 	"286"
			}

			/* CBaseCombatCharacter::Weapon_Switch(CBaseCombatWeapon*, int) */
			"Weapon_Switch"
			{
				"linux"		"292"
				"windows" 	"291"
			}
		}
	}
}
