Все новости
Это интересно
Сейчас читают
Игры
Аватар Evernews Evernews

В симуляторе посадки на Луну нашли ошибку, просуществовавшую 55 лет

0
0
Поделиться
Телеграфировать

Из-за бага в игре нельзя использовать определенную технику посадки.

В симуляторе посадки на Луну нашли ошибку, просуществовавшую 55 лет

Симулятор посадки на Луну Lunar Lander, выпущенный в 1969 году и давший начало жанру космических симуляторов, содержит ошибку, остававшуюся незамеченной 55 лет. Об обнаружении бага рассказал инженер Мартин К. Мартин, экспериментировавший с проектом.

Мартин намеревался опробовать в Lunar Lander технику посадки, предполагающую включение двигателей на самом последнем этапе полета — так, чтобы погасить скорость прямо перед прилунением. Ничего не вышло: игра была уверена, что лунный модуль не прилунился.

Геймплей оригинальной игры выглядел так

Решив выяснить, в чем тут дело, Мартин занялся исследованием исходного кода Lunar Lander. В исходниках инженер обнаружил «сложную физику и численные вычисления»; проанализировав код, Мартин нашел ошибку, из-за которой расчеты не всегда велись верно.

Оказалось, создатель Lunar Lander Джим Сторер забыл добавить в одно из мест алгоритма деление на двойку. Сторера можно простить: он написал Lunar Lander в 17-летнем возрасте, реализовав сложную даже по современным меркам физическую модель.

Сам Сторер в разговоре с Мартином рассказал, что с математической моделью посадки на Луну ему помогал отец-физик — видимо, тоже не заметивший баг.

Теги: Игры
Аватар Evernews
Evernews
8068 подписчиков