Как сделать запретную зону?

Суть в том что игрока из нее будет выкидывать и не давать пройти в нее

как-то так примерно

function ENT:StartTouch(ent)
	if ent == NULL then return end

	local phys = ent:GetPhysicsObject()
	if phys == NULL then return end
	phys:SetVelocity(ent:GetVelocity() * -3)
end

юзал эту тему что-бы выталкивать автомобили пытающиеся заехать в сейф-зону пару тройку лет назад.
но методика не идеальная, рекомендую лучше использовать

в этом хуке есть CollisionData.HitNormal с помощью которого можно выталкивать всегда в сторону от энтити.