Разработчик Half-Life рассказал, как чинил в игре надоедливый баг двадцатилетней давности

В честь юбилея первой Half-Life компания Valve выпустила крупный патч. Помимо прочего, в нем исправили ошибку с анимацией щупалец, которые на современных операционных системах не хватали ученого, а лишь били землю рядом с ним. Программист Бен Бербанк рассказал, как удалось решить проблему.

По словам Бербанка, у Valve было три варианта: изменить код с риском наплодить еще больше ошибок, поменять анимацию или изменить структуру карты, чтобы игрок не видел ошибку с щупальцем. Поскольку игроки могли «сломать» анимацию, просто выстрельнув в ученого, было принято решение менять карту.

Удачно сделать это с помощью стандартного редактора не получилось, поскольку компиляция на современной системе меняла код — могло появиться еще больше ошибок. Тогда Бен сохранил оригинальную карту, но внес изменения с помощью шестнадцатеричного редактора. Код остался прежним, новых ошибок не появилось.

В итоге анимация с щупальцем запускается сразу, как игрок открывает нужную дверь. Из-за этого сломать анимацию с помощью выстрела в ученого не получится (щупальце уже схватило его), а момент с ошибкой остается вне поля зрения. Результат работы можно увидеть в ролике выше.

Анализ
×
Valve Corporation
Сфера деятельности:Связь и ИТ
11