"Games"
{
	"cstrike"
	{
		"Offsets"
		{
			// CBaseEntity::ForceVPhysicsCollide(CBaseEntity *pEntity). Same offsets as PropSpawner.
			"ForceVPhysicsCollide"
			{
				"linux"		"160"
				"windows"	"159"
			}

			// CBasePlayer::PlayerUse(). Same offsets as PropSpawner.
			"PlayerUse"
			{
				"linux"		"414"
				"windows"	"413"
			}
		}

		"Signatures"
		{
			// CCollisionEvent::ShouldCollide(IPhysicsObject *, IPhysicsObject *, void *, void *).
			// The vphysics collision filter, detoured for couch bans. Local symbol from .symtab,
			// so the server binary must be unstripped (as for LagCompensation).
			"CCollisionEvent::ShouldCollide"
			{
				"library"	"server"
				"linux"		"@_ZN15CCollisionEvent13ShouldCollideEP14IPhysicsObjectS1_PvS2_"
			}

			// CBaseEntity::CollisionRulesChanged(). Makes vphysics re-ask ShouldCollide for cached pairs.
			"CBaseEntity::CollisionRulesChanged"
			{
				"library"	"server"
				"linux"		"@_ZN11CBaseEntity21CollisionRulesChangedEv"
			}
		}
	}
}
