Вот, например, справочник по энтитям первой халфы: https://twhl.info/wiki/page/category%3AEntity_Guides%2BHalf-Life_Entity_Guide
Если помнишь, там на энтитях сделано всё. Даже не существовало способа для мапера как-либо заскриптовать поведение кодом.
Ну там просто объекты - это цельная неделимая игровая сущность. Максимум можно было визуально её изменить, например, выбрать набор брашей и поставить ему сущность, например "func_door". И тогда у тебя была своя дверь, выглядящая как тебе надо, можно было даже опциями поиграть, скорость поменять, там, но на этом как бы и всё.
В Dark Engine объект - это набор свойств, любых, какие поставишь, такие и будут. В примеру, можно сделать объект с моделью бочки, которая может сдвигаться как сдвижная дверь, одновременно поворачиваться, как поворотная дверь, и по которой можно будет взбираться, как по лестнице... А ещё была возможность наследования от других таких же объектов и тогда... Правда, сам движок не всегда справлялся с корректным расчетом поведения всего этого многообразия

.
В этом плане, Dark Engine уделывает quake по всем статьям... Разве что браши нельзя было использовать в качестве геометрии объекта. Зато рум браши можно...

Но это уже отдельная тема. Как и скриптование
