Движок использует для описания логики интерпретатор игровых скриптов, содержащий примерно 25 основных команд и еще 25 дополнительных (среди которых есть циклы, условные и безусловные перехода, команды записи значений по адресам).
Теперь я понимаю, почему скриптовые языки получаются именно в 5-10 раз медленнее нативных ^_^.
Записи о призраках и комнатах состоят из перемешанного набора команд интерпретатора скриптов и данных.
В игре есть бонусы - мешки с деньгами, за которые начисляется по 3000 очков, но появляются они настолько редко, что за прохождение можно найти не более пары, и то если повезет. Но из кода комнаты можно вытащить команду записи условия появления бонуса. Она состоит из записи указателя на цепочку байт, заканчивающуюся нулём, соответствующую набору типов призраков, которых нужно отловить в заданном порядке для получения мешка. Естественно, что случайно наткнуться на нужный порядок практически нереально.
Я подозреваю, что стал вообще первым из игроков после самих разработчиков, собравшим все возможные спрятанные мешки.