From: kmeaw
Date: 2023-11-02 06:04:14Z
Zero Master добился ещё одной интересной вещи на E1M8 - он смог
компьютерным перебором найти последовательность действий (которые на
практике может повторить человек), приводящую к ошибке intercepts
overflow, которую ещё называют "all-ghosts effect".
В движке есть оптимизация, позволяющая не проверять столкновение каждого
объекта с каждым - на карту накладывается сетка (blockmap), и
столкновения проверяются только в пределах одной ячейки. Если
столкновение было обнаружено, то оно помещается в массив
intercept_t intercepts[MAXINTERCEPTS].
В DOS версии рядом с концном этого массива лежат переменные, хранящие
атрибуты blockmap. Если их испортить, то движок потеряет возможность
проверять столкновения объектов - все (и игрок, и монстры) получат
возможноть проходить сквозь стены. Почти на всех уровнях это приводит к
невозможности их пройти, так как нажать на кнопку выхода тоже не
получается. Но на E1M8 это не нужно - достаточно просто добежать до
последней комнаты, не обращая внимания на препятствия, что и дало ему
возможность поставить рекорд в категории UV speed в 17 секунд примерно
полтора года назад.